[Python] Python3でTwitterの検索APIを利用する
こんにちは、@yoheiMuneです。
今日は、Python3でTwitter Developer APIを利用する方法をブログに書きたいと思います。Python2系で有名だったライブラリは使えないようで、Python3にはそれ用のライブラリがあります。
Twitter Application Manager
上記でアプリを登録したら以下の値を取得しておきます(後の実装で使います)。
上記では認証情報を
sixohsix/twitter | Github
Search | Twitter Developers
Rate limiting | Twitter Developers
次にTwitter APIを利用するときに、また調べそうだったのでブログに残した次第でした。他の方の参考になれば幸いです。
最後になりますが本ブログでは、フロントエンドのネタやPythonネタを中心に情報を発信しています。気になった方はぜひ、RSSやTwitterをフォローして頂けますと幸いです ^ ^。
最後までご覧頂きましてありがとうございました!
今日は、Python3でTwitter Developer APIを利用する方法をブログに書きたいと思います。Python2系で有名だったライブラリは使えないようで、Python3にはそれ用のライブラリがあります。
準備1:Twitterにアプリ登録をする
TwitterのAPIを利用するためには、事前にTwitter Developersでアプリ登録をする必要があり、以下で登録することができます。Twitter Application Manager
上記でアプリを登録したら以下の値を取得しておきます(後の実装で使います)。
- Access Token
- Access Token Secret
- Consumer Key
- Consumer Secret
準備2:Pythonライブラリをインストールする
Python3用のTwitterライブラリも幾つかありますが、sixohsix/twitter@Githubが有名なようなので、そちらを利用します。以下でインストールできます。$ pip install --upgrade twitter
Twitterの検索APIを利用する
上記2つの準備が完了したら、Twitter APIを使うことができるようになります。具体的には以下のような実装を行います。// secret.json // OAuth2.0用のデータ { "access_token": "your token", "access_token_secret": "your token secret", "consumer_key": "your consumer key", "consumer_secret": "your consumer secret" }
# -*- coding: utf-8 -*- # # Library: # https://github.com/sixohsix/twitter # # Twitter Search API # https://dev.twitter.com/rest/public/search # https://dev.twitter.com/rest/reference/get/search/tweets # # Twitter API Limits # 450 queries per 15 minute for seach api # https://dev.twitter.com/rest/public/rate-limiting # import json from twitter import * # OAuth2.0用のキーを取得する with open("secret.json") as f: secretjson = json.load(f) # Twitterへの接続 t = Twitter(auth=OAuth(secretjson["access_token"], secretjson["access_token_secret"], secretjson["consumer_key"], secretjson["consumer_secret"])) # 検索する apiresults = t.search.tweets(q="デザイン", lang="ja", result_type="recent", count=100) print(len(apiresults["statuses"])) print(apiresults)このような感じで簡単に利用することができます。
twitter
モジュールの具体的な使い方や、検索のパラメータ詳細などは、後ろの参考サイトをご覧ください。上記では認証情報を
secret.json
にまとめています。外部ファイルにして.gitignore
に追加することで、他人に認証情報を公開する必要なく、プログラムは共有できるので便利です。上記で利用しているPythonのjsonモジュールの使い方は以前にブログを書いたのでそちらをご参照ください。参考サイト
Python3でTwitter APIを使えるようになるまでに、以下のサイトを参照しました。sixohsix/twitter | Github
Python3のTwitterのクライアント。具体的な使い方の詳細はREAMEに書いてあり、また各関数の詳細は、Twitter DevelopersのDocumentsを参照するようにとのこと。
Search | Twitter Developers
Twitterの検索APIの詳細が記載されたドキュメント。パラメータの説明やレスポンスのサンプルや説明が記載されています。
Rate limiting | Twitter Developers
Twitter APIの回数制限などの情報が記載されたページ。検索APIを上記のようなバッチ処理で利用する場合は、450回/15分の制限のようです。
最後に
今回はTwitter APIをPython3から利用する方法でした。ライブラリのおかげでかなり簡単に実装することができました(どっちかというと、充実のTwitter Develoersの資料を読むのが大変だった)。次にTwitter APIを利用するときに、また調べそうだったのでブログに残した次第でした。他の方の参考になれば幸いです。
最後になりますが本ブログでは、フロントエンドのネタやPythonネタを中心に情報を発信しています。気になった方はぜひ、RSSやTwitterをフォローして頂けますと幸いです ^ ^。
最後までご覧頂きましてありがとうございました!