[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をフォローして頂けますと幸いです ^ ^。
最後までご覧頂きましてありがとうございました!






