python爬取推特图片_twitter图片视频批量下载
import requests
import re
from urllib.request import urlretrieve
import os
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
res=requests.session()
prox={
#如有合适的代理可以放在这里
}
h={
'authorization': ''# 需要抓包获取authorization
'x-csrf-token': '' ,#需要抓包获取x-csrf-token
'cookie': '' ,#需要抓包获取cookie
}
def download(file_link,file_name):
#下载媒体
if os.path.exists(file_name) == False:
urlretrieve(file_link, file_name)
print('下载完成')
else:
print('文件已存在')
pass
def getrestid(id):
#获取rest_id函数
if os.path.exists('./twitter/'+id)==False:
os.makedirs('./twitter/'+id)
idurl = 'https://api.twitter.com/graphql/ZRnOhhXPwue_JGILb9TNug/UserByScreenName?variables=%7B%22screen_name%22%3A%22' + id + '%22%2C%22withHighlightedLabel%22%3Atrue%7D'
rest_id = res.get(idurl, headers=h,proxies=prox).json()['data']['user']['rest_id']
return (rest_id)
def search(id):
rest_id=getrestid(id)#获取rest_id
daurl = 'https://api.twitter.com/2/timeline/media/' + rest_id + '.json?include_profile_interstitial_type=1.txt&include_blocking=1.txt&include_blocked_by=1.txt&include_followed_by=1.txt&include_want_retweets=1.txt&include_mute_edge=1.txt&include_can_dm=1.txt&include_can_media_tag=1.txt&skip_status=1.txt&cards_platform=Web-12&include_cards=1.txt&include_composer_source=true&include_ext_alt_text=true&include_reply_count=1.txt&tweet_mode=extended&include_entities=true&include_user_entities=true&include_ext_media_color=true&include_ext_media_availability=true&send_error_codes=true&simple_quoted_tweets=true&count=3000&ext=mediaStats%2ChighlightedLabel%2CcameraMoment'
dat = res.get(daurl, headers=h).json()['globalObjects']['tweets'].values()
values = [i for i in dat]
for i in values:
try:
try:
full_text = i['full_text']#推文正文
cretime = i['created_at']
media_url_list = i['extended_entities']['media']#媒体list
for j in media_url_list:
media_url = j['media_url_https']
media_type = j['type']
if media_type == 'video':#视频
media_name = './twitter/' + id + '/' + re.sub('https://\S+', '-', full_text) + re.sub('\+.*', '-',cretime) + str(media_url_list.index(j)) + '.mp4'
videos = j['video_info']['variants']
video_size = 0
video_url = ""
live_url = ""
for k in videos:
video_type = k['content_type']
if video_type == 'application/x-mpegURL':
live_url=k['url']
else:
if k.get('bitrate') > video_size:
video_size = k['bitrate']
video_url = k['url']
download(video_url,media_name)
else:
#图片
media_name = './twitter/' + id + '/' + re.sub('https://\S+', '-', full_text) + re.sub('\+.*', '-',cretime) + str(media_url_list.index(j)) + '.jpg'
download(media_url,media_name)
except:
#多个图片
media_url_list = i['entities']['media']
for j in media_url_list:
media_url = j['media_url_https']
media_name = 'twitter/' + id + '/' + re.sub('https://\S+', '-', full_text) + re.sub('\+.*', '-',media_url_list.index(j)) + '.jpg'
download(media_url, media_name)
except:
print('no media')
if __name__ == '__main__':
id=input()#输入用户id
search(id)
python爬取推特图片_twitter图片视频批量下载相关推荐
- Python爬取京东商品评论和图片下载
Python爬取京东商品评论和图片下载 代码仅供学习使用,切勿扩散并且频繁爬取网站 贴上代码和注释,方便自己下次看 import requests import time import json im ...
- 教你用python爬取王者荣耀英雄皮肤图片,并将图片保存在各自英雄的文件夹中。(附源码)
教你用python爬取王者荣耀英雄皮肤图片,并将图片保存在各自英雄的文件夹中.(附源码) 代码展示: 保存在各自的文件夹中 美么? 让我们开始爬虫之路 开发环境 windows 10 python3. ...
- 使用python爬取斗图网的图片
使用python爬取斗图网的图片 以下是代码部分: # -*- coding: utf-8 -*- """ Created on Wed Apr 14 14:41:42 ...
- 用python爬取动态网页上的图片(百度图片)
用python爬取动态网页上的图片(百度图片) 参考B站一个视频,视频链接: https://www.bilibili.com/video/BV1Va4y1Y7fK?share_source=copy ...
- Python爬取王者荣耀英雄的皮肤数据并下载皮肤图片项目
Python爬取王者荣耀英雄的皮肤数据,并下载皮肤图片!高清的图片用来做桌面也不错哟~ 网址:https://pvp.qq.com/web201605/herolist.shtml 1.获得英雄信息, ...
- python爬取妹子图网健康图片
为了博取大家的眼球,博主选了这个题材,现实生活中博主很正直的人,嗯 废话不说 demo,本demo只爬取了封面图片,内部图片方法相同 import requests from pyquery impo ...
- python爬取捧腹网gif图片
#_*_coding:utf-8_*_ #爬取捧腹网GIF图片 import urllib,re import urllib.request import chardet #需要导入这个模块,检测编码 ...
- python爬取qq空间锁密图片_Python3爬取QQ空间信息(下)
|下载W3Cschool手机App,0基础随时随地学编程>>戳此了解| 导语 内容回顾: Python爬取QQ空间信息(上) 按照(上)中的安排,本期内容为抓取QQ空间的好友信息并做可视化 ...
- 用Python爬取B站、腾讯视频、芒果TV和爱奇艺视频弹幕
众所周知,弹幕,即在网络上观看视频时弹出的评论性字幕.不知道大家看视频的时候会不会点开弹幕,于我而言,弹幕是视频内容的良好补充,是一个组织良好的评论序列.通过分析弹幕,我们可以快速洞察广大观众对于视频 ...
- python爬取B站up主全部视频封面
B站up主的点赞投币转发等信息,以及弹幕文件.评论文件等等都可以调用特定的API接口来获得. python爬取B站弹幕.绘制词云等点击下方链接 https://blog.csdn.net/weixin ...
最新文章
- PL/SQL Developer报错提示 Not logged on 问题完美解决方案
- 爱python网_Python
- JZOJ 5628. 【NOI2018模拟4.4】Travel
- mongodb复制集部署
- 十大最常见的Java性能问题
- ios wkweb设置图片_iOS WKWebView的使用
- 2019年技术盘点云数据库篇(一):UCloud专家谈云数据库:千锤百炼 云之重器
- mysql用root账户建立用户和赋予权限
- Python遗传算法工具箱的使用(二)求解最短路径问题
- 使用ffmpeg解析mp4文件得到音频和视频数据
- 计算机专业能当电子厂技术员,我在一个机械工厂从事电气技术员的工作,谁能告诉..._电气工程师_帮考网...
- 计算机网络-网络规划与设计
- 时间序列分析之ADF检验
- 微型计算机不是ecu,ECU升级是什么意思?
- 使用cartopy画飞机的航线
- Stata新命令:readWind-快速读入并转换万德数据
- js的三大家族(offset/scroll/client)和一个事件对象(event)///正则
- cd4013编程c语言,cd4013中文资料汇总(引脚图及功能_工作原理及方式_功能结构_参 - 电气技术 - 电子发烧友网...
- jvm系列之一:jvm结构
- arcgis提取四至权利人--最小外接矩形