初心者のためのpython入門

自分がつまづいたところやつまづきやすいところを中心に書いていきます。また、役に立つライブラリの紹介などをしていきます。

Twitter API ~実践編~

前書き

時間が空きましたが、実践編を書いていきます。

OAuth認証

まずは、前回取得したアクセス情報を元にOAuth認証をしましょう。OAuthは、オーオースと読みます。

from requests_oauthlib import OAuth1Session

CONSUMER_KEY = "取得したキー"  
ACCESS_TOKEN_SECRET = " "
ACCESS_TOKEN = " "
ACCESS_TOKEN_SECRET = " "

twitter = OAuth1Session(CONSUMER_KEY, CCESS_TOKEN_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET) 

これで認証は、完了です。説明を簡単にするために、直接キーを書き込みましたが、あまり良い方法ではありません。.envなどの隠しファイルに定義し、そこから読み出す方が断然良いです。

ツイート!!

次は、実際にツイートしてみましょう。

# 先程の続き
url = "https://api.twitter.com/1.1/statuses/update.json" # エンドポイント

tweet = "ツイートしたいこと "
params = {"status" : tweet}

res = twitter.post(url, params = params) # 実際にツイートされるので注意

if res.status_code == 200: 
    print("成功")
else: 
    print("失敗")

Postするときに、paramsに規定のパラメータを与えることによりツイートすることができます。Postとは、HTTP通信でアプリケーションなどからWebサーバへ送るリクエストの種類の1つです。Postを用いることでURLで指定したプログラムなどにデータを送信できます。今回は、ツイートのデータを送っています。status_codeは、Webサーバからのレスポンスを意味しています。200は、成功を意味します。有名なstatus_codeは、404(page not found)などではないでしょうか。

あとがき

今回は、OAuth認証とツイートの例を紹介しました。他にもタイムラインの取得やフレンドのツイートの取得、写真を含んだツイートなど色々なことができます。ぜひ、調べて色々と遊んでみてください。簡単にボットを作ることもできます。