Python 采集 筷 实现视频批量保存
2023-09-14 09:05:35 时间
前言
嗨喽~大家好呀,这里是魔王呐 ❤ ~!
刷到的视频怕它下架?我们来采集保存一下它
知识点:
-
动态数据抓包
-
requests发送请求
-
json数据解析
开发环境:
-
python 3.8 运行代码
-
pycharm 2022.3 辅助敲代码
-
requests pip install requests
代码展示
需要 源码 . 素材 . 点击领取即可
导入模块
import re
import requests # 发送请求
伪装
headers = {
'Cookie': 'kpf=PC_WEB; clientid=3; did=web_4bf90ac4df8aaef2d99527f1da1063fd; userId=3075864129; kuaishou.server.web_st=ChZrdWFpc2hvdS5zZXJ2ZXIud2ViLnN0EqAB9tSqSgbeN3Qhc4H_V6Awn1-yfEnaceVEJQUhtxgCBBHHQl_DyWKPYDO3XIdjFQTHwSSFOPZL6FPTk7LSW1dfp7qvBSeP4ANjPT1evIoq9ODcPJyb6YgEIdsV-Dzm_Sq73yQg6jYhvuRNJGwAM_GfAfUKWiG4RDdGDpHd1uCAJd0qM2xZwqzr11JlIz3yRFeNFNfO2zINkJAktY8lUyQwuRoS9XMBYg26NCtIxdOwhbHEY-u6IiBNGgmRMQXPmCodWM1RM7oFpjHSgD61betJSR00w0VYtSgFMAE; kuaishou.server.web_ph=69e54c87baac46f523262858017c7988cf22; kpn=KUAISHOU_VISION',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36'
}
请求链接
url = 'https://www.****.com/graphql'
pcursor = ""
while True:
# 请求体
json = {
'operationName': "visionProfilePhotoList",
'query': "fragment photoContent on PhotoEntity {\n id\n duration\n caption\n originCaption\n likeCount\n viewCount\n realLikeCount\n coverUrl\n photoUrl\n photoH265Url\n manifest\n manifestH265\n videoResource\n coverUrls {\n url\n __typename\n }\n timestamp\n expTag\n animatedCoverUrl\n distance\n videoRatio\n liked\n stereoType\n profileUserTopPhoto\n musicBlocked\n __typename\n}\n\nfragment feedContent on Feed {\n type\n author {\n id\n name\n headerUrl\n following\n headerUrls {\n url\n __typename\n }\n __typename\n }\n photo {\n ...photoContent\n __typename\n }\n canAddComment\n llsid\n status\n currentPcursor\n tags {\n type\n name\n __typename\n }\n __typename\n}\n\nquery visionProfilePhotoList($pcursor: String, $userId: String, $page: String, $webPageArea: String) {\n visionProfilePhotoList(pcursor: $pcursor, userId: $userId, page: $page, webPageArea: $webPageArea) {\n result\n llsid\n webPageArea\n feeds {\n ...feedContent\n __typename\n }\n hostName\n pcursor\n __typename\n }\n}\n",
'variables': {'userId': "3xjfq9eesf4kxwg", 'pcursor': pcursor, 'page': "profile"}
}
- 发送请求
response = requests.post(url=url, headers=headers, json=json)
- 获取数据
json_data = response.json()
- 解析数据
键: 值 通过:前面的内容 取:后面的内容
feeds = json_data['data']['visionProfilePhotoList']['feeds']
pcursor = json_data['data']['visionProfilePhotoList']['pcursor']
for feed in feeds:
photoUrl = feed['photo']['photoUrl']
caption = feed['photo']['caption']
caption = re.sub('[\\\/:*?"<>|]', '', caption)
print(caption, photoUrl)
- 保存数据
video_data = requests.get(photoUrl).content
with open(rf"C:\Users\Administrator\Desktop\video\{caption}.mp4", mode='wb') as f:
f.write(video_data)
if pcursor == "no_more":
break
效果展示
尾语 💝
要成功,先发疯,下定决心往前冲!
学习是需要长期坚持的,一步一个脚印地走向未来!
未来的你一定会感谢今天学习的你。
—— 心灵鸡汤
本文章到这里就结束啦~感兴趣的小伙伴可以复制代码去试试哦 😝
相关文章
- Python爬虫之urllib
- python实现矩阵的转置_Python实现矩阵转置的方法分析
- python的进制转换器,Python进制转换[通俗易懂]
- python表情代码_Python实现表情包的代码实例[通俗易懂]
- 遗传算法的应用实例python实现_遗传算法Python解决一个问题
- python pkl文件_Python字符串格式化输出的方式包括
- 文件夹里的图片批量重命名_python批量修改文件名
- Python 生成随机数_python建立随机数列表
- python制作自动交易程序_Python如何实现自动化交易
- Python 运用Paramiko实现批量巡检
- python机器学习《基于逻辑回归的预测分类》
- 新手学Python可行吗?需要什么基础?(新手学python可行吗?需要什么基础)
- Python 自动化指南(繁琐工作自动化)第二版:十七、计时、安排任务和启动程序
- 一个神奇的需求:doc批量转docx,1行Python代码实现
- Python SciPy 实现最小二乘法
- 开发Linux下Python编程:实现自己的开发梦想(linux下python)
- 使用Python编程连接MySQL数据库(python连mysql)
- Linux与Python:开拓者的新时代(linux和python)
- python使用Python轻松操作Redis(redis-)
- Python实现MySQL数据库的读取(python读取mysql)
- 从 Python 连接到 MySQL:实现更多强大的数据库应用(python和mysql)
- Linux下从系统卸载Python(linux下卸载python)
- Linux下Python编程:从入门到精通(linux下python编程)
- Python与MySQL实现数据分析的完美组合(mysql中python)
- python用Redis与Python实现大数据收集与分析(redis 联合)
- 用python实现批量重命名文件的代码
- python批量下载壁纸的实现代码
- python实现批量转换文件编码(批转换编码示例)
- Python实现批量把SVG格式转成png、pdf格式的代码分享