はじめに
Twythonで複数画像データ(最大4枚*1)を投稿する方法を紹介します。
前提条件
Twythonでテキストのみのツイートができる環境があること。
画像投稿の流れ(2枚投稿の場合)
画像ファイルのオープン
#画像データをバイナリ形式で読み込む photo=open('1枚目のファイルパス','rb') capture=open('2枚目のファイルパス"','rb')
画像データのアップロード
#画像をTwitterにアップロードする #json形式で投稿した画像のIDなどが返ってくる photo_upl_inf = twitter.upload_media(media=photo) capture_upl_inf = twitter.upload_media(media=capture)
画像データを付与したツイートの投稿
message = '画像投稿のテストです' #ツイート文と投稿する分の画像ID(カンマ区切り)を設定する twitter.update_status(status=message, media_ids=[photo_upl_inf['media_id'],capture_upl_inf['media_id']])
ソースコード
#!/usr/bin/env python # coding: utf-8 import twython import json # twitter configuration from twython import Twython from auth import ( consumer_key, consumer_secret, access_token, access_token_secret ) twitter = Twython( consumer_key, consumer_secret, access_token, access_token_secret ) # message create message = '画像投稿のテストです' photo=open('/home/pi/holy_ground_bot_ver2/img/uji.JPG','rb') capture=open('/home/pi/holy_ground_bot_ver2/img/00000_1.JPG','rb') photo_upl_inf = twitter.upload_media(media=photo) capture_upl_inf = twitter.upload_media(media=capture) twitter.update_status(status=message, media_ids=[photo_upl_inf['media_id'],capture_upl_inf['media_id']]) print(message)
キーを設定するファイルは別途用意ください。*2
参考サイト
画像投稿の参考
upload_mediaの仕様
おわりに
Twythonで複数画像データを投稿する方法を紹介しました。APIから画像も投稿できるようになると、自動投稿の内容がとてもリッチになった気がします。