requests库爬取腾讯视频的弹幕
- 二话不说,先上代码
- 执行结果
私信小编01即可获取Python大量学习资料
二话不说,先上代码
import requests
headers = {
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36"
}
def danmu():
url = 'https://mfm.video.qq.com/danmu?target_id=3753912718%26vid%3Dt00306i1e62'
# 最终得到的能控制弹幕的参数是target_id和timestamp,tiemstamp每30请求一个包。
for i in range(75,3000,30):
data = {
"timestamp":i
}
response = requests.get(url,headers=headers,params=data,verify=False)
res = eval(response.text) #字符串转化为列表格式
con = res["comments"]
if res['count'] != 0: #判断弹幕数量,确实是否爬取结束
for i in con:
print(i['opername'],':',i['content']) #打印用户和弹幕内容
else:
print('爬完了')
danmu() # 执行函数
执行结果
一个学习爬虫过程的一个小项目代码:
通过分析腾讯视频请求,找到弹幕的异步请求包,分析url,找到控制弹幕的参数,然后访问并提取每个返回的弹幕数据,最终打印出弹幕用户和弹幕内容。