爬取好看视频

2023-12-31 13:56:57

255405744447498e8661ce3914c50815.png

难点在于找到包:

好看视频是下滑动态加载的,所以在xhr 中去找包,找包步骤如下:

91f344723ba54324b59ab3178a180f8b.png

又点击检查,点击network

fa66933cd75f4e998da5dfe1855a28a4.png?

点击xhr?

刷线网址

往下滑

4cbdf51f21dc42ec9a9f2dbd0eb22633.png

824957f4e9864a309862d14811930137.png?

点击包,在preview中可以看到数据

?

48f07d4d1e3a45e29cb3b89fdf50121f.png?

视频链接在playurl?

代码为:

import os
filename = 'video\\'
if not os.path.exists(filename):
? ? os.mkdir(filename)
url = 'https://haokan.baidu.com/haokan/ui-web/video/feed'
p = {
? ? 'time': '1701653885089',
? ? 'hk_nonce': '9e0bccd7b82fb05760d179fc5d90f3c8',
? ? 'hk_timestamp': '1701653885',
? ? 'hk_sign': '2c36fe5cf58ddf3b348132fe07db3f48',
? ? 'hk_token': 'FWpvdAVwdwNyCHMCd3p+DAsYCgA'

}
headers = {'User-Agent':
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36',
? ? ? ? ? ? ? ? ? ? ? ? ? ?}
response = requests.get(url=url,params=p,headers=headers)

data = response.json()['data']['apiData']
for index in data:
? ? play_url = index['previewUrlHttp']
? ? title = index['title']
? ? # 数据保存 对于视频播放地址 也需要发送请求 获取二进制数据
? ? # 保存图片 视频 音频 特定格式的文件 都是需要获取二进制数据 进行保存
? ? content = requests.get(url=play_url,headers=headers).content
? ? with open(filename+title+'.mp4',mode='wb') as f:
? ? ? ? f.write(content)
? ? ? ? print('正在保存:',title)

结果展示:

9530126c94d749c4927959c51a557d63.png?

?

文章来源:https://blog.csdn.net/m0_57265868/article/details/135314874
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。