[スポンサーリンク]
TwitterAPIとは
先日Python3を使用出来る環境を構築しました
勉強として、Pythonで簡単なプログラミングをしてみたいと思います
何を作るか迷ったのですが、良く利用しているTwitterを操作してみたいと思います
身近な物だと、楽しく勉強出来そうなので
Twitterは、WEBAPIを公開しており、無料でも利用することが出来ます
有料版に比べ、使用出来るAPIや、使用回数に制限がありますが、無料でもいろいろなことが出来ます
APIは、Application Programming Interfaceの略で、開発するアプリケーションで利用出来るインターフェースのことです
なのでTwitterAPIは、WEBを介してTwitterサービスを利用出来るインターフェースになります
TwitterのサイトにAPIの索引があり、各APIの使い方が記載されています
今回は、PythonとTwitterAPIを触ってみる準備として、2つ作業をしていきます
①TwitterAPIを使用する為のAPIキーとトークンの取得
②ライブラリのインストール
[スポンサーリンク]
TwitterAPIを使用する為のAPIキーとトークンの取得
TwitterAPIを使用する為には、APIキーとトークンの取得が必要です
APIキーとトークンの取得の為には、Twitterのデベロッパーアカウントの作成と申請が必要になります
申請方法については、ネットに沢山情報があります
ただ、申請内容ついては、定期的に変更になるようなので、なるべく新しい記事を参照することをお薦めします
今回私が参考にさせて戴いたのは、以下のサイトです
申請は英語で行う必要がありますが、Google翻訳で英語にして貰えば問題なく承認が貰えました
あまり複雑な文章にせずに、短い日本語を英語に翻訳すると良いようです
今回は、Pythonを勉強したく、その題材として普段利用しているTwitterを使って勉強したい、という内容で申請しました
尚、今回の一連の記事についてはサンプルプログラムなので、APIキーやトークンも同一ファイルとして記載していきます
APIの利用箇所も同一ファイル内記載します
実際にプログラムする場合、外部ファイル化や、関数化を行うことが望ましいです
APIキーやトークンはプログラム中では下記の通り表示します
【ConsumerKey】:Consumer API Key
【ConsumerSecretKey】:Consumer API secret key
【AccessToken】:Accsess Token
【AccessTokenSecret】:Acees token Secret
ライブラリのインストール
pipライブラリの有効化
PythonでTwitterAPIを触る為のライブラリのインストールの前に、pipコマンドを使えるようにします
pipはPip Installs Pythonのことで、Pythonパッケージを管理するシステムとなります
これを使うことで、Python関連の外部ライブラリの管理が楽になります
Pythonのパッケージ管理システムは複数存在するのですが、pipはPython2.7.9及びPython3.4以降は標準ライブラリになっているので、pipを使用出来るようにしたいと思います
今回の環境では、Python 3.6.8をインストールしているので、pipは標準でインストールされています
但し、リンクが張られていないので、pipコマンドがそのままでは使えませんでした
/usr/binを確認したところ、pip3.6がインストールされているので、lnコマンドでリンクを設定します
これでpipコマンドが使えるようになりました
1 2 |
# pip --version bash: pip: コマンドが見つかりませんでした... |
1 2 3 4 5 6 |
# ls /usr/bin | grep pip lesspipe.sh pip-3 pip-3.6 pip3 pip3.6 |
1 |
# ln -s /usr/bin/pip3.6 /usr/local/bin/pip |
1 2 |
# pip --version pip 9.0.3 from /usr/lib/python3.6/site-packages (python 3.6) |
requests&requests-oauthlibライブラリのインストール
PythonでTwitterAPIを使う為に、便利なライブラリとして、「requests」「requests-oauthlib」をインストールします
どちらも可読性が高く、コード作成も容易と評判なので、これを使いたいと思います
■requests
PythonでHTTPを使った通信を行う為のライブラリです
Requests is an elegant and simple HTTP library for Python, built for human beings.
■requests-oauthlib
PythonでOAuth認証を行う為のライブラリです
Requests-OAuthlib uses the Python Requests and OAuthlib libraries to provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients.
「requests」「requests-oauthlib」をインストールします
pip installコマンドで簡単にインストール出来ます
1 |
pip install requests |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# pip install requests WARNING: Running pip install with root privileges is generally not a good idea. Try `pip install --user` instead. Collecting requests Downloading https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl (57kB) 100% |????????????????????????????????| 61kB 2.6MB/s Collecting chardet<3.1.0,>=3.0.2 (from requests) Downloading https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl (133kB) 100% |????????????????????????????????| 143kB 3.4MB/s Collecting certifi>=2017.4.17 (from requests) Downloading https://files.pythonhosted.org/packages/b9/63/df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99/certifi-2019.11.28-py2.py3-none-any.whl (156kB) 100% |????????????????????????????????| 163kB 5.8MB/s Collecting idna<2.9,>=2.5 (from requests) Downloading https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl (58kB) 100% |????????????????????????????????| 61kB 7.0MB/s Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 (from requests) Downloading https://files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl (125kB) 100% |????????????????????????????????| 133kB 6.4MB/s Installing collected packages: chardet, certifi, idna, urllib3, requests Successfully installed certifi-2019.11.28 chardet-3.0.4 idna-2.8 requests-2.22.0 urllib3-1.25.7 |
1 |
pip install requests-oauthlib |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# pip install requests-oauthlib WARNING: Running pip install with root privileges is generally not a good idea. Try `pip install --user` instead. Collecting requests-oauthlib Downloading https://files.pythonhosted.org/packages/a3/12/b92740d845ab62ea4edf04d2f4164d82532b5a0b03836d4d4e71c6f3d379/requests_oauthlib-1.3.0-py2.py3-none-any.whl Collecting oauthlib>=3.0.0 (from requests-oauthlib) Downloading https://files.pythonhosted.org/packages/05/57/ce2e7a8fa7c0afb54a0581b14a65b56e62b5759dbc98e80627142b8a3704/oauthlib-3.1.0-py2.py3-none-any.whl (147kB) 100% |????????????????????????????????| 153kB 6.0MB/s Requirement already satisfied: requests>=2.0.0 in /usr/local/lib/python3.6/site-packages (from requests-oauthlib) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.6/site-packages (from requests>=2.0.0->requests-oauthlib) Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python3.6/site-packages (from requests>=2.0.0->requests-oauthlib) Requirement already satisfied: idna<2.9,>=2.5 in /usr/local/lib/python3.6/site-packages (from requests>=2.0.0->requests-oauthlib) Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.6/site-packages (from requests>=2.0.0->requests-oauthlib) Installing collected packages: oauthlib, requests-oauthlib Successfully installed oauthlib-3.1.0 requests-oauthlib-1.3.0 |
これで、PythonでTwitterAPIを触ってみる準備が出来ました
今回の準備で、PythonからTwitterAPIに接続出来る状態となっています
次は実際に、TwitterAPIを触ってみたいと思います
[スポンサーリンク]
コメント