##Twitter APIを発行する
以下のサイトを参考にAPIのキーを発行しました。
https://4-bh.com/twitter-api/
環境作り
OSはCentOS7
を使用しました。今回はpython3
でコードを書きます。
ちなみに最初はCentoOS7標準のpython2.7
でやっていたのですが、後々エンコード周りでハマってしまいました。python3系なら大丈夫という記事をどこかで見たので、途中からpython3でやることに変更しました。その記事通り、python3系にしたらハマっていた部分でエラーが出ること無くスルリンとうまくいきました。
yum
まずはpip3
を使用できるようにします。
$ sudo yum -y install epel-release.noarch
$ sudo yum -y install install python36 python36-devel python36u-pip
またpython3.6
をpython3
として使えるようにシンボリックリンクを貼ります。
# python3.6のパスを確認
$ which python3.6
/usr/bin/python3.6
# python3のシンボリックリンク作成
$ sudo ln -s /usr/bin/python3.6 /usr/bin/python3
# "python3" と打って正しく動作するか確認
$ python3 --version
Python 3.6.2
pip
必要なpythonモジュールを追加します。
TwitterへのアクセスはOAuth認証
を必要とします。
PythonでOAuth認証をするために、今回はRequests-OAuthlib
というライブラリを使ってみます。
$ sudo pip3 install requests requests-oauthlib
このライブラリのOAuth1Session
を使用します。これには以下4つのデータを与えてあげます。
- Consumer Key
- Consumer Secret
- Access Token
- Access Token Secret
これら4つの取得方法は上記 Twitter APIを発行する
のサイトを参考にしてください。
ファイル構成
こんな感じです。
twitter # アプリディレクトリ(名前はなんでもいい)
├── config.py # OAuthの認証情報
├── config.pyc # 最初はないが、実行すると勝手にできる
└── getTimelineTweet.py # 次回作成するアプリ
config.py
認証情報を格納しておきます。
CONSUMER_KEY = "********************"
CONSUMER_SECRET = "********************"
ACCESS_TOKEN = "********************"
ACCESS_TOKEN_SECRET = "********************"
終わりに
これで一旦の環境作りは完了です。次回以降、twitterからデータを引っ張ってきて遊んでみようと思います。