
- ラズベリーパイが好きな人!
- pythonに興味がある人・使っている人!
- Twitter厨!
こんにちは.けんゆーです(@kenyu0501_)
ラズベリーパイからツイッターにツイートするときには,APIを使って簡単にできます.
最近は,審査がちょっと厳しくなってAPIキーの取得(アクセストークンなど)がなかなかハードルが高いですが,,,
そこで今回はちょっと手こずったことを書いて行きます.
Pythonプログラム
プログラム自体は超簡単です.
from requests_oauthlib import OAuth1Session
CK = ***********
CS = ***********
AT = ***********
AS = ***********
url = "https://api.twitter.com/1.1/statuses/uopdata.json"
tw = {"status":"つながった(^^)わーいわーい from らずべりーぱい"}
twitter = OAuth1Session(CK,CS,AT,AS)
req = twitter.post(url, tw = tw)
if req.status_code == 200:
print("OK")
else:
print("Error: %d" % req.status_code)
(参考:PythonでTwitterAPIにアクセスという記事です)
プログラム中のCK,CS,AT,ASはそれぞれ,
- Consumer Key
- Consumer Secret
- Access Token
- Accesss Token Secert
です.TwitterAPIの申請は各自で行ってください.
出力結果
おいら達が山口大学で運営している「エンジニアリング交流サロン」のTwitterアカウントに飛ばします.
つながった(^^)わーいわーい from らずべりーぱい
— エンジニアリング交流サロン (@engcomsalon) September 17, 2018
こんな感じで速攻でツイートされます.これを出力するのに少々戸惑いました.
エラーが出てきた!!
ラズベリーパイ上のスクリプトでPythonを動かしているのですが,

401エラー!!笑
認証がきちんと取れていないようです.
修正したこと
まずはラズベリーパイの端末でTwitterにログインできているのかを確認します.
そのあとに,
ラズベリーパイ自体の設定として,日にちを現在時刻に設定し直します.
pi@raspberrypi:~ $ sudo data -s "2018/09/17 15:49:00"
以上のコードで日付を現在時刻に設定したらきちんと繋がりました〜^^
では






