2013-04-06 15 views
10

Oauth for Python 3の最新の形式は何ですか?Python 3用に動作するOAuthライブラリはありますか?

Oauthを使用するブローカーのAPIを使用して在庫スクリーナを作成しようとしています。私が見つけた情報のほとんどは時代遅れであるか矛盾しています。私は以下のモジュールを参照しているのを見てきました:

Oauth - 元のように見える、今は時代遅れです。私は "モジュール"オブジェクトに "Consumer"属性がないというエラーが出る "

Oauth2 - 新しいバージョン、明らかに古くなった?最も参考になった1つのオンライン。ピップで不具合が発生する/それをインストールする方法を見つけることができません。

Oauthlib - のOauthとのOAuth2のためにも潜在的に交換 - IIRC、のOauthとのOAuth2

のための新しい交換

Rauth.OAuth2Serviceであることを主張しますか?

リクエスト - ?

Oauth_hook - ?

pyoauth2 - pyoauth2のinitに「client」という名前のモジュールがないというエラーが表示されます。

どれも期待どおりに動作していないようですが、これは低いOauth 3サポートによるものだと感じています。 OAuthをPython 3で動作させましたか?もしそうなら、どうしたのですか?ここrauthの

+0

Oauth1またはOauth2(互換性のないバージョンの標準と一部のサービスのバージョン)がお探しですか? –

+0

どちらか。現在、どちらのモジュールもPython 3では動作しません。 –

+0

私は[oauthlib](https://pypi.python.org/pypi/oauthlib)とPython 3.2のOauth1で成功しました。 –

答えて

6

Requets_oauthlibが動作するようです。ここでは、Python 3で動作するコードを使用しています。私が使用したサンプルコードのほとんどが、私が動作できないフォーマットを見つけたので、私はそれをポストしています。

from requests_oauthlib import OAuth1  

client_key = '' 
client_secret = '' 
resource_owner_key = '' 
resource_owner_secret = '' 

def query(queryurl): 
     headeroauth = OAuth1(client_key, client_secret, resource_owner_key, 
     resource_owner_secret, signature_type = 'auth_header') 

     return requests.get(queryurl, auth = headeroauth) 

query('http://website.com') 
6

著者:rauthはGitHubのにかけしかし、我々はそれに取り組んでいる、とan active branch(適切な名前「のpython-3」)があります現在、公式にはPython 3

をサポートしていないクライアントライブラリですうまくいく。あなたは自由に使用できますが、後で正式にサポートをリリースすると、状況が少し変わる可能性があることに注意してください。それで、実世界で人々にテストしてもらい、Python 3エコシステムに対応できるように変更することは素晴らしいことです。

注:oauthlibは、クライアントライブラリではなく、rauthの代わりではありません。これはpython-oauth2のように一般的な解決策を試みますが、python-oauth2とは異なり、クライアントは提供しません。

+0

ありがとうございます。私はこれをチェックします! –

+1

もちろんです。 Python 3の移植例の要点もここにあります:https://gist.github.com/maxcountryman/5277290 – maxcountryman

+2

私はrauthが[Python 3をサポートしている]ようです(https://github.com/litl/rauth/commit/2c0d348c7560ffe62f6012c9c6cf64e8b0be0e88)! – dotancohen

関連する問題