PythonからTwitter APIを操作して、
自分のアカウントにつぶやきの投稿をします!
ちなみに今回使う、Python Twitter Toolsは投稿だけではなく、Twitterの検索結果を取得したり、ダイレクトメッセージの送信などもできるパッケージです。
#設定した環境
MacBook Air (13-inch, Mid 2011)
プロセッサ: 1.8 GHz Intel Core i7
メモリ: 4 GB 1333 MHz DDR3
OSバージョン: 10.11.5
Python: 3.5.2
#準備
今回はPython Twitter Toolsを利用します。
pipでインストールする手もあるみたいですが、自分はこちらからファイルをダウンロードしてインストールしました。
ダウンロードしたら、解凍したフォルダに移動してインストールをします。
(フォルダにはバージョンが記されているので、DLしたものに合わせて入力してください。)
$cd twitter-x.xx.x
$python setup.py install
pipでインストールする場合
$pip install twitter
#Twiiterでアプリケーション登録をする
以下のページからTwitterのアプリケーション登録をしてAPIを使えるようにします。
アカウントは普段使って投稿しているものと同じものを使います。
登録したら、「Keys and Access Tokens」のタブを選択して、
API key, API secret, Access token, Access token secretの取得をします。
#投稿してみよう!
それでは、以下のコードに各種Tokenを入れて、実行してみましょう。
from twitter import Twitter, OAuth
access_token = "自分のを記入"
access_token_secret = "自分のを記入"
api_key = "自分のを記入"
api_secret = "自分のを記入"
t = Twitter(auth = OAuth(access_token, access_token_secret, api_key, api_secret))
text = 'Pythonを使ってつぶやいてみました。'
statusUpdate = t.statuses.update(status=text)
# 生の投稿データの出力
print(statusUpdate)
# 要素を絞った投稿データの出力
print(statusUpdate['user']['screen_name'])
print(statusUpdate['user']['name'])
print(statusUpdate['text'])
実行すると最初に、とても長い文字列が出力されますが、これが一投稿に含まれる全てのデータです。
これだと見た目上、どんな内容がつぶやかれたのかわかりにくいので、
最後の3行で、スクリーンネームとユーザー名、投稿本文を抽出して出力しています。
# 要素を絞った投稿データの出力
print(statusUpdate['user']['screen_name'])
print(statusUpdate['user']['name'])
print(statusUpdate['text'])
抽出したいデータに応じて、[]の中を編集してみると良いと思います。
例えば、['description']とするとプロフィールの紹介文も取得できます。
投稿したり、抽出したりできる便利なPython Twitter Toolsの入門編でした。