4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

twitterのjsonファイル眺めてみた。複数枚の画像URLの保存先

Last updated at Posted at 2020-04-23

#記事が見つからない
画像のURLを取得する際に、複数枚画像があった際それぞれのURLを取得する記事が見つからなかったので、諦めてjson眺めてみました。
今回は画像つきのツイートを参考にしたので動画など画像以外のことはわかりません。

旧リスト※あまり見る意味はないです
key value 使いみち
created_at Thu Apr 23 09:53:23 +0000 2020 投稿した時間
id 1253260671044616192 投稿id
text 画像取得テスト用(複数枚) 投稿内容
entities 'hashtags','symbols',などなど 画像の情報がなどが入っているが、extended_entitiesの方に全てあるので存在意義は謎。
media_url 'http://pbs.twimg.com/media/EWR529vUMAMnBuK.png' httpの画像URL
media_url_https 'https://pbs.twimg.com/media/EWR529vUMAMnBuK.png' httpsの画像URL
extended_entities 追加のEntities。画像や動画の詳細データが入っている
type 'photo' アップロードされたメディアの種類。

#取得したツイートデータ

取得したツイートデータ
{
'created_at':ツイートした時間
'id':ツイートの固有id
'id_str':ツイートの固有id(上と同じ値)
'text':ツイート内容
'truncated':#わからない
'entities':{ツイートに含まれるエンティティ(後述)}
'extended_entities': {画像や動画などの情報が含まれる(後述)}
'source': '<a href="https://mobile.twitter.com" rel="nofollow">Twitter Web App</a>' #使用用途がわからない
'in_reply_to_status_id': None #取得できてないのでわからない
'in_reply_to_status_id_str': None #取得できてないのでわからない
'in_reply_to_user_id': None #取得できてないのでわからない
'in_reply_to_user_id_str': None #取得できてないのでわからない
'in_reply_to_screen_name': None #取得できてないのでわからない
'user':{ツイートしたユーザーのデータが含まれる(後述)}
'geo': None #取得できてないのでわからない
'coordinates': None #取得できてないのでわからない
'place': None #取得できてないのでわからない
'contributors': None #取得できてないのでわからない
'is_quote_status': False #取得できてないのでわからない
'retweet_count': #リツイートの数
'favorite_count': #フォバ(ハート)の数
'favorited': False #取得できてないのでわからない
'retweeted': False #取得できてないのでわからない
'possibly_sensitive': False #取得できてないのでわからない
'lang': 'ja' #ツイートした際の言語
}

#entities

'entities'
{
'hashtags': []
'symbols': []
'user_mentions': []
'urls': []
'media': [
#ここから下はmediaの中の内容
{'id': #メディアの固有id
'id_str': #メディアの固有id(上と同じ値)
'indices': [14,37]#ここの値は何に使っているかわからない
'media_url':#画像や動画のURL(http)
'media_url_https':#画像や動画のURL(https)
'url': #短縮URLツイートへの(https)
'display_url': #謎の短縮URl(pic.twitter.com/*****)(ツイートにリダイレクトする)
'expanded_url':#画像を拡大表示する際のURL
#ここから下はわからない
'type': 'photo'
'sizes': {'small': {'w': 510,'h': 680,'resize': 'fit'}
'medium': {'w': 535,'h': 713,'resize': 'fit'}
'large': {'w': 535,'h': 713,'resize': 'fit'}
'thumb': {'w': 150,'h': 150,'resize': 'crop'}}}
]
}

#extended_entities

extended_entities
{
'media': [
{'id': #メディアの固有id
'id_str': #メディアの固有id(上と同じ値)
'indices': [14,37]#ここの値は何に使っているかわからない
'media_url':#画像や動画のURL(http)
'media_url_https':#画像や動画のURL(https)
'url': #短縮URLツイートへの(https)
'display_url': #謎の短縮URl(pic.twitter.com/*****)(ツイートにリダイレクトする)
'expanded_url':#画像を拡大表示する際のURL
#ここから下はわからない
'type': 'photo'
'sizes': {'small': {'w': 510,'h': 680,'resize': 'fit'}
'medium': {'w': 535,'h': 713,'resize': 'fit'}
'large': {'w': 535,'h': 713,'resize': 'fit'}
'thumb': {'w': 150,'h': 150,'resize': 'crop'}}}
]}
]
}

#extended_entities(複数枚時)
画像などが複数枚ある場合は{}が増え、[]の中に追加される

extended_entities(複数枚時)
{
'media': [
{'id': #メディアの固有id
'id_str': #メディアの固有id(上と同じ値)
'indices': [14,37]#ここの値は何に使っているかわからない
'media_url':#画像や動画のURL(http)
'media_url_https':#画像や動画のURL(https)
'url': #短縮URLツイートへの(https)
'display_url': #謎の短縮URl(pic.twitter.com/*****)(ツイートにリダイレクトする)
'expanded_url':#画像を拡大表示する際のURL
#ここから下はわからない
'type': 'photo'
'sizes': {'small': {'w': 510,'h': 680,'resize': 'fit'}
'medium': {'w': 535,'h': 713,'resize': 'fit'}
'large': {'w': 535,'h': 713,'resize': 'fit'}
'thumb': {'w': 150,'h': 150,'resize': 'crop'}}}
]}
{'id': #メディアの固有id
'id_str': #メディアの固有id(上と同じ値)
'indices': [14,37]#ここの値は何に使っているかわからない
'media_url':#画像や動画のURL(http)
'media_url_https':#画像や動画のURL(https)
'url': #短縮URLツイートへの(https)
'display_url': #謎の短縮URl(pic.twitter.com/*****)(ツイートにリダイレクトする)
'expanded_url':#画像を拡大表示する際のURL
#ここから下はわからない
'type': 'photo'
'sizes': {'small': {'w': 510,'h': 680,'resize': 'fit'}
'medium': {'w': 535,'h': 713,'resize': 'fit'}
'large': {'w': 535,'h': 713,'resize': 'fit'}
'thumb': {'w': 150,'h': 150,'resize': 'crop'}}}
]}
{'id': #メディアの固有id
'id_str': #メディアの固有id(上と同じ値)
'indices': [14,37]#ここの値は何に使っているかわからない
'media_url':#画像や動画のURL(http)
'media_url_https':#画像や動画のURL(https)
'url': #短縮URLツイートへの(https)
'display_url': #謎の短縮URl(pic.twitter.com/*****)(ツイートにリダイレクトする)
'expanded_url':#画像を拡大表示する際のURL
#ここから下はわからない
'type': 'photo'
'sizes': {'small': {'w': 510,'h': 680,'resize': 'fit'}
'medium': {'w': 535,'h': 713,'resize': 'fit'}
'large': {'w': 535,'h': 713,'resize': 'fit'}
'thumb': {'w': 150,'h': 150,'resize': 'crop'}}}
]}
{'id': #メディアの固有id
'id_str': #メディアの固有id(上と同じ値)
'indices': [14,37]#ここの値は何に使っているかわからない
'media_url':#画像や動画のURL(http)
'media_url_https':#画像や動画のURL(https)
'url': #短縮URLツイートへの(https)
'display_url': #謎の短縮URl(pic.twitter.com/*****)(ツイートにリダイレクトする)
'expanded_url':#画像を拡大表示する際のURL
#ここから下はわからない
'type': 'photo'
'sizes': {'small': {'w': 510,'h': 680,'resize': 'fit'}
'medium': {'w': 535,'h': 713,'resize': 'fit'}
'large': {'w': 535,'h': 713,'resize': 'fit'}
'thumb': {'w': 150,'h': 150,'resize': 'crop'}}}
]}]
}

#user

正直使わなかったので調べてない

user
'user': {'id': #ユーザー固有id
'id_str': #ユーザー固有id(上と同じ値)
'name': #ユーザーネーム
'scr een_name': #@から始まるユーザーid
'location':#住んでいる場所
'description:#ユーザー説明欄
'url': #ユーザーの設定してるwebサイト
'entities': #ユーザーのプロフィールに含まれるURL
{'description': {'urls': [{'url': #twitterによる短縮URL(https)
'expanded_url': #リンク先
'display_url': #実際に表示されている文字
'indices': [6,29]#わからない
}]}}
'protected': False
'followers_count': #フォロワー数
'friends_count': #フォロー数
'listed_count': #なんのリストかわからない
'created_at': #ツイッターの開始日
'favourites_count': #フォバ(ハート)をした数
'utc_offset': #わからない
'time_zone': #わからない
'geo_enabled': #わからない
'verified': #わからない
'statuses_count': #わからない
'lang': #わからない
'contributors_enabled': #わからない
'is_translator': #わからない
'is_translation_enabled': #わからない
'profile_background_color': #わからない
'profile_background_image_url': #わからない
'profile_background_image_url_https': #わからない
'profile_background_tile': #わからない
'profile_image_url': #アイコン画像url(http)
'profile_image_url_https': #アイコン画像url(https)
'profile_banner_url': #ヘッダー画像のurl
'profile_link_color': #わからない
'profile_sidebar_border_color': #わからない
'profile_sidebar_fill_color': #わからない
'profile_text_color': #わからない
'profile_use_background_image': #ヘッダーに画像があるか
'has_extended_profile': #わからない
'default_profile': #わからない
'default_profile_image': #わからない
'following': #わからない
'follow_request_sent': #わからない
'notifications': #わからない
'translator_type': #わからない}

#結局どうなったの?
複数枚の画像の場合
['extended_entities']→['media']→[画像の番号]→['media_url']
のように指定すると画像のURLが取得できます。
mediaをlenで回すのがいいと思う。

サンプルjson
「,」(カンマ)で改行してあります。
twitter
{'created_at': 'Thu Apr 23 09:53:23 +0000 2020'
 'id': 1253260671044616192
 'id_str': '1253260671044616192'
 'text': '画像取得テスト用(複数枚) https://t.co/Z8agNBIfI1'
 'truncated': False
 'entities': {'hashtags': []
 'symbols': []
 'user_mentions': []
 'urls': []
 'media': [{'id': 1253260581508755459
 'id_str': '1253260581508755459'
 'indices': [14
 37]
 'media_url': 'http://pbs.twimg.com/media/EWR529vUMAMnBuK.png'
 'media_url_https': 'https://pbs.twimg.com/media/EWR529vUMAMnBuK.png'
 'url': 'https://t.co/Z8agNBIfI1'
 'display_url': 'pic.twitter.com/Z8agNBIfI1'
 'expanded_url': 'https://twitter.com/_tomoi/status/1253260671044616192/photo/1'
 'type': 'photo'
 'sizes': {'small': {'w': 510
 'h': 680
 'resize': 'fit'}
 'medium': {'w': 535
 'h': 713
 'resize': 'fit'}
 'large': {'w': 535
 'h': 713
 'resize': 'fit'}
 'thumb': {'w': 150
 'h': 150
 'resize': 'crop'}}}]}
 'extended_entities': {'media': [{'id': 1253260581508755459
 'id_str': '1253260581508755459'
 'indices': [14
 37]
 'media_url': 'http://pbs.twimg.com/media/EWR529vUMAMnBuK.png'
 'media_url_https': 'https://pbs.twimg.com/media/EWR529vUMAMnBuK.png'
 'url': 'https://t.co/Z8agNBIfI1'
 'display_url': 'pic.twitter.com/Z8agNBIfI1'
 'expanded_url': 'https://twitter.com/_tomoi/status/1253260671044616192/photo/1'
 'type': 'photo'
 'sizes': {'small': {'w': 510
 'h': 680
 'resize': 'fit'}
 'medium': {'w': 535
 'h': 
    713
 'resize': 'fit'}
 'large': {'w': 535
 'h': 713
 'resize': 'fit'}
 'thumb': {'w': 150
 'h': 150
 'resize': 'crop'}}}
 {'id': 1253260602992021504
 'id_str': '1253260602992021504'
 'indices': [14
 37]
 'media_url': 'http://pbs.twimg.com/media/EWR54NxU0AACEcv.png'
 'media_url_https': 'https://pbs.twimg.com/media/EWR54NxU0AACEcv.png'
 'url': 'https://t.co/Z8agNBIfI1'
 'display_url': 'pic.twitter.com/Z8agNBIfI1'
 'expanded_url': 'https://twitter.com/_tomoi/status/1253260671044616192/photo/1'
 'type': 'photo'
 'sizes': {'large': {'w': 535
 'h': 713
 'resize': 'fit'}
 'small': {'w': 510
 'h': 680
 'resize': 'fit'}
 'thumb': {'w': 150
 'h': 150
 'resize': 'crop'}
 'medium': {'w': 535
 'h': 713
 'resize': 'fit'}}}
 {'id': 1253260618842304513
 'id_str': '1253260618842304513'
 'indices': [14
 37]
 'media_url': 'http://pbs.twimg.com/media/EWR55I0U8AEG5uD.png'
 'media_url_https': 'https://pbs.twimg.com/media/EWR55I0U8AEG5uD.png'
 'url': 'https://t.co/Z8agNBIfI1'
 'display_url': 'pic.twitter.com/Z8agNBIfI1'
 'expanded_url': 'https://twitter.com/_tomoi/status/1253260671044616192/photo/1'
 'type': 'photo'
 'sizes': {'small': {'w': 510
 'h': 680
 'resize': 'fit'}
 'medium': {'w': 535
 'h': 713
 'resize': 'fit'}
 'large': {'w': 535
 'h': 713
 'resize': 'fit'}
 'thumb': {'w': 150
 'h': 150
 'resize': 'crop'}}}
 {'id': 1253260634424094720
 'id_str': '1253260634424094720'
 'indices': [14
 37]
 'media_url': 'http://pbs.twimg.com/media/EWR56C3UMAAK0tL.png'
 'media_url_https': 'https://pbs.twimg.com/media/EWR56C3UMAAK0tL.png'
 'url': 
    'https://t.co/Z8agNBIfI1'
 'display_url': 'pic.twitter.com/Z8agNBIfI1'
 'expanded_url': 'https://twitter.com/_tomoi/status/1253260671044616192/photo/1'
 'type': 'photo'
 'sizes': {'medium': {'w': 535
 'h': 713
 'resize': 'fit'}
 'large': {'w': 535
 'h': 713
 'resize': 'fit'}
 'small': {'w': 510
 'h': 680
 'resize': 'fit'}
 'thumb': {'w': 150
 'h': 150
 'resize': 'crop'}}}]}
 'source': '<a href="https://mobile.twitter.com" rel="nofollow">Twitter Web App</a>'
 'in_reply_to_status_id': None
 'in_reply_to_status_id_str': None
 'in_reply_to_user_id': None
 'in_reply_to_user_id_str': None
 'in_reply_to_screen_name': None
 'user': {'id': 1092170420906733568
 'id_str': '1092170420906733568'
 'name': 'tomoi🌧'
 'scr een_name': '_tomoi'
 'location': '大宮'
 'description
    : '#N高 ( https://t.co/hdVu8AHFPo )通学コース3期生、大宮校1期生\nアイコンは@ChinoMaron先生のイラストをお借りしてます(宣伝)\nたまに上げてるやつ▶ #tomoi進捗
    '
 'url': None
 'entities': {'description': {'urls': [{'url': 'https://t.co/hdVu8AHFPo'
 'expanded_url': 'http://nnn.ed.jp'
 'display_url': 'nnn.ed.jp'
 'indices': [6
 29]}]}}
 'protected': False
 'followers_count': 167
 'friends_count': 387
 'listed_count': 3
 'created_at': 'Sun Feb 03 21:18:14 +0000 2019'
 'favourites_count': 7800
 'utc_offset': None
 'time_zone': None
 'geo_enabled': False
 'verified': False
 'statuses_count': 1205
 'lang': None
 'contributors_enabled': False
 'is_translator': False
 'is_translation_enabled': False
 'profile_background_color': 'F5F8FA'
 'profile_background_image_url': None
 'profile_background_image_url_https': None
 'profile_background_tile': False
 'profile_image_url': 'http://pbs.twimg.com/profile_images/1092176174711681024/swswyoOT_normal.jpg'
 'profile_image_url_https': 'https://pbs.twimg.com/profile_images/1092176174711681024/swswyoOT_normal.jpg'
 'profile_banner_url': 'https://pbs.twimg.com/profile_banners/1092170420906733568/1550315898'
 'profile_link_color': '1DA1F2'
 'profile_sidebar_border_color': 'C0DEED'
 'profile_sidebar_fill_color': 'DDEEF6'
 'profile_text_color': '333333'
 'profile_use_background_image': True
 'has_extended_profile': True
 'default_profile': True
 'default_profile_image': False
 'following': False
 'follow_request_sent': False
 'notifications': False
 'translator_type': 'none'}
 'geo': None
 'coordinates': None
 'place': None
 'contributors': None
 'is_quote_status': False
 'retweet_count': 0
 'favorite_count': 4
 'favorited': False
 'retweeted': False
 'possibly_sensitive': False
 'lang': 'ja'}
4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?