Twitterへの画像投稿プログラム(python)
RaspberryPiで自動投稿をしてみたくなり、カメラ画像などができないかなあと考えています。
まずは Twitterで投稿するプログラムを改良してみました。
CK, CS, AT, AS には Twitterから取得した各種のコードIDを記入してください。
#!/usr/bin/env python # coding: utf-8 import json from requests_oauthlib import OAuth1Session CK = '' # Consumer Key CS = '' # Consumer Secret AT = '' # Access Token AS = '' # Accesss Token Secert url_media = "https://upload.twitter.com/1.1/media/upload.json" url_text = "https://api.twitter.com/1.1/statuses/update.json" # OAuth認証 セッションを開始 twitter = OAuth1Session(CK, CS, AT, AS) # 画像投稿 files = {"media" : open('image.jpg', 'rb')} req_media = twitter.post(url_media, files = files) # レスポンスを確認 if req_media.status_code != 200: print ("画像アップデート失敗: %s", req_media.text) exit() # Media ID を取得 media_id = json.loads(req_media.text)['media_id'] print ("Media ID: %d" % media_id) # Media ID を付加してテキストを投稿 params = {'status': '画像投稿テスト', "media_ids": [media_id]} req_media = twitter.post(url_text, params = params) # 再びレスポンスを確認 if req_media.status_code != 200: print ("テキストアップデート失敗: %s", req_text.text) exit() print ("OK")