Python 采集 快 熟 实现视频批量保存,应该能过审吧?(1)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

知识点:
  • 动态数据抓包
  • 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-yfEnaceVEJQJAktY8lUyQwuRoS9XMBYg26NCtIxdOwhbHEY-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"}
    }

1.发送请求

    response = requests.post(url=url, headers=headers, json=json)

2.获取数据

    json_data = response.json()

3. 解析数据

键: 值 通过:前面的内容 取:后面的内容

    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)

4. 保存数据

        video_data = requests.get(photoUrl).content


### 最后

不知道你们用的什么环境,我一般都是用的Python3.6环境和pycharm解释器,没有软件,或者没有资料,没人解答问题,都可以免费领取(包括今天的代码),过几天我还会做个视频教程出来,有需要也可以领取~  

给大家准备的学习资料包括但不限于:  

Python 环境、pycharm编辑器/永久激活/翻译插件  

python 零基础视频教程  

Python 界面开发实战教程  

Python 爬虫实战教程  

Python 数据分析实战教程  

python 游戏开发实战教程  

Python 电子书100本  

Python 学习路线规划

![](https://img-blog.csdnimg.cn/d29631674929476f9c3b30f7ff58dff0.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZlaTM0Nzc5NTc5MA==,size_16,color_FFFFFF,t_70)




**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化学习资料的朋友,可以戳这里获取](https://bbs.youkuaiyun.com/topics/618317507)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值