🖥

#Twitter #API でタイムラインから、メディアの画像URLつきの #Json を得る #python スクリプトの例

2019/02/11に公開

#Twitter #API でタイムラインから、メディアの画像URLつきの #Json を得る #python スクリプトの例

ツイッタランドの森の奥深く‥

画像URLは奥深くに隠されている。
ツイートのURLを与えると、Twitterが勝手に画像を展開する仕様。
画像直接のURLはなか見当たらない。
HTMLソース見てもmedia id さえ見当たらない。なんかJsとかで展開させてるはず。

ありがとうStackoverflow

Are you adding tweet_mode=extended on your API call to get the new extended Tweet format?

No media_url in reslt of statuses/user_timeline for some statuses - REST API - Twitter Developers

Script

これで解決!!!!!!

  'tweet_mode' : 'extended'
import json, config #標準のjsonモジュールとconfig.pyの読み込み
from requests_oauthlib import OAuth1Session #OAuthのライブラリの読み込み

CK = config.CONSUMER_KEY
CS = config.CONSUMER_SECRET
AT = config.ACCESS_TOKEN
ATS = config.ACCESS_TOKEN_SECRET
twitter = OAuth1Session(CK, CS, AT, ATS) #認証処理

url = "https://api.twitter.com/1.1/statuses/user_timeline.json" #タイムライン取得エンドポイント

params ={
  'count' : 5,
  'exclude_replies' : True,
  'tweet_mode' : 'extended'

}
res = twitter.get(url, params = params)

if res.status_code == 200: #正常通信出来た場合
    timelines = json.loads(res.text) #レスポンスからタイムラインリストを取得
    for line in timelines: #タイムラインリストをループ処理
        print(line)
else: #正常通信出来なかった場合
    print("Failed: %d" % res.status_code)

とれたよ!

image

実物

https://pbs.twimg.com/media/DzCn594U0AAP7-v.jpg

image

Ref

PythonでTwitter API を利用していろいろ遊んでみる - Qiita

Original by Github issue

https://github.com/YumaInaura/YumaInaura/issues/574

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

https://line.me/ti/g2/eEPltQ6Tzh3pYAZV8JXKZqc7PJ6L0rpm573dcQ

Twitter

https://twitter.com/YumaInaura

公開日時

2019-02-11

Discussion