Twitter がhttps://dev.twitter.com/docs/api/1.1/get/trends/placeGET trends/places
で提供する APIを使用して、トップ 10 のトレンド トピックのリストを取得するためのリクエストを送信しようとしていました。Python での同じコードは次のとおりです。
import twitter
CONSUMER_KEY = ' XXXXXXXXXX'
CONSUMER_SECRET ='XXXXXXXXXXXX'
OAUTH_TOKEN = ' XXXXXXXXX'
OAUTH_TOKEN_SECRET = ' XXXXXXX'
auth = twitter.oauth.OAuth(OAUTH_TOKEN, OAUTH_TOKEN_SECRET,
CONSUMER_KEY, CONSUMER_SECRET)
twitter_api = twitter.Twitter(auth=auth)
WORLD_WOE_ID = 1
world_trends = twitter_api.trends.place(_id=WORLD_WOE_ID)
print world_trends
「twitter_api」のみを印刷しようとすると、出力として次のようになります。
<twitter.api.Twitter object at 0x39d9b50>
これは、OAuth 資格情報を使用して、Twitter の API をクエリするための承認を取得することに成功したことを意味します。さて、上記のコードを実行した後、次のエラーが表示されます。
TwitterHTTPError: Twitter sent status 400 for URL: 1.1/trends/place.json using parameters: (id=1&oauth_consumer_key=%201FqhG77x7XaVjx6a1lnm2ip8G&oauth_nonce=3628940350753944768&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1399534257&oauth_token=%20337142662-QWaMBk6MCe5vM6to5tw3AR3cHChYc0e0yUnEB7lh&oauth_version=1.0&oauth_signature=%2BD0ZzXV8cMuc5S%2B9UKRJ85xF1wY%3D)
details: {"errors":[{"message":"Bad Authentication data","code":215}]}
エラー メッセージから、エラーは不適切な構文と関係があると考えました (HTTP 400 エラー メッセージが表示されるため)。また、https://dev.twitter.com/docs/api/1.1/get/trends/placeに記載されているサンプル URL を使用しようとすると、まだ次のエラーが発生します。 {"errors":[{"message":"Bad Authentication data","code":215}]}
コードの問題は何ですか?エラーの根本原因を見つけようとしましたが、重要な手がかりを見つけることができませんでした。