画像等のアップロード関連¶
本節では media 系 API について述べる。と言っても実は POST media/upload 一つしかない。
画像付きツイートをするには、実は POST statuses/upload 単独ではなく、前もってファイルを某所にアップロードしておき、そこで得られる ID をツイートに添える必要がある。本説で記す API はそのアップロードを行うものである。
サンプルコードは次のものを参照して欲しい。
GET media/upload¶
GET media/upload を用いることである程度の画像ファイル等をアップロードできる。以下に注意点をザッとまとめておく。
Twitter
オブジェクトの生成時にキーワード引数domain
を指定する必要がある。値はupload.twitter.com
である。許される画像フォーマットは次のいずれかである:
PNG
JPEG
BMP
WEBP
GIF
許されるファイルサイズは次のとおりである:
画像は 5MB まで
ビデオは 15MB まで
画像等のデータを生のバイナリーとしてファイルから読み取り、 POST media/upload のパラメーター
media
にそのまま渡す。
サイズの小さいファイルをアップロードする¶
比較的サイズの小さい PNG 画像ファイルを上述のスクリプトでアップロードすると、次のようになる。
bash$ ./twmedia.py ../illvelo.png
file size = 0 MB
{
"expires_after_secs": 86400,
"image": {
"image_type": "image/png",
"h": 505,
"w": 512
},
"media_id": 675725940782071809,
"media_id_string": "675725940782071809",
"size": 47078
}
重要なのは media_id
の値だ。これを POST statuses/update のパラメーター
media_ids
に指定してツイートすると、ツイートにこの画像が表示される。ツイートの投稿方法については タイムラインおよびツイート関連 を参照。
サイズの大きいファイルをアップロードする¶
Todo
その時が来たら執筆する。