能不能帮忙瓜瓜
# 图片回复
# 图片回复
强引用,软引用,弱引用,虚引用
nohup java -jar robot-0.0.1-SNAPSHOT.jar > robotMsg.log 2>&1 &
你机器人在哪呢?
# 图片回复
# 图片回复
看日志啊
美团的脚本拉了一个 怎么不跑呢
# 图片回复
https://www.aliyundrive.com/s/3DDUbR1TS67
很方便
# 图片回复
有没有人推荐几个好用脚本
首页
薅羊毛
工具
留言板
更多
关于
Search
1
青龙挂某手极速版,某条极速版,饿了么,美团脚本!
6,999 阅读
2
IOS免越狱自签教程!
4,453 阅读
3
IOS微信无需越狱导入自己喜欢的语音包!
2,974 阅读
4
删除mysql表卡死 , 打不开,一直转圈圈
1,975 阅读
5
搭建青龙面板跑定时任务!
1,602 阅读
JAVA
面试
前端
Python
易语言
其他
登录
Search
尼采
累计撰写
63
篇文章
累计收到
21
条评论
今日撰写
0
篇文章
首页
栏目
JAVA
面试
前端
Python
易语言
其他
页面
薅羊毛
工具
留言板
关于
用户登录
登录
搜索到
1
篇与
Python
的结果
2021-12-19
Python爬快手小姐姐视频
今天来一个简单的用python爬取快手视频并下载的教程,也算是自学python的第一个案例 如何安装python,配置环境,解析器在这里就不过多阐述了,直接开始第一步: 导入三个库:import requests #用来模拟浏览器发送请求import json #用来发送json格式数据import re #正则表达式第二步: 1.打开网页版快手进行分析 2.F12打开开发者工具,Network,搜索你想要搜索的关键词 3.通过分析请求的结果,发现这个请求获取的数据正是我们想要的 4.我们看他的请求头,请求的地址和请求方式第三步:根据上面的分析结果,定义请求地址uurl = 'https://www.kuaishou.com/graphql'为了不让快手识别出我们是爬虫程序,所以我们还需要一些参数进行伪装我们可以全都复制下来,定义一个headers,放里面,我这里只取了几个重要的headers = { "content-type": 'application/json', "Cookie": 'kpf=PC_WEB; kpn=KUAISHOU_VISION; clientid=3; did=web_d5468278a1e92934b3751f249005ffd3; client_key=65890b29; userId=1002026148; kuaishou.server.web_st=ChZrdWFpc2hvdS5zZXJ2ZXIud2ViLnN0EqABb3k7H6FPn5rPTxi_U90A1EyivbCG1lWIL1_rV6NDVpXzhBc1jBu7ym59g3fUExHe5ZNBf8YKAXnF2IL0cRoE0cCKrTTndeqWCsDxF5FFXwEjJVAWhZTi87lyyhTvvOBDBgG7AZ03thuTfr_QXmvbueTi9Yd_RBKwIWhWZ9cY88tn8OqN_4iX9l7mHh7PvK7eCnL3BXSM0JABpysi1936rxoS1KQylfZfbCBEuMI0IcjfqenKIiBZWJZqfmVkyM3JqsKIBJh0A-rz8bGOJ_hOfif7PIQInSgFMAE; kuaishou.server.web_ph=4185d09841f87d0bcad53e5c0029de4c6304', "Host": 'www.kuaishou.com', "Origin": 'https://www.kuaishou.com', "Referer": 'https://www.kuaishou.com/search/video?searchKey=%E6%80%A7%E6%84%9F', "User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36', }注意的是,我们要用{}字典来装这些数据,键:值的形式表示第四步:有了伪装,我们还需要请求数据,让他知道我们想要什么数据复制这部分内容,定义一个data来装data = { "operationName": "visionSearchPhoto", "variables": {"keyword": "小姐姐", "pcursor": "", "page": "search"}, "query": "query visionSearchPhoto($keyword: String, $pcursor: String, $searchSessionId: String, $page: String, $webPageArea: String) {\n visionSearchPhoto(keyword: $keyword, pcursor: $pcursor, searchSessionId: $searchSessionId, page: $page, webPageArea: $webPageArea) {\n result\n llsid\n webPageArea\n feeds {\n type\n author {\n id\n name\n following\n headerUrl\n headerUrls {\n cdn\n url\n __typename\n }\n __typename\n }\n tags {\n type\n name\n __typename\n }\n photo {\n id\n duration\n caption\n likeCount\n realLikeCount\n coverUrl\n photoUrl\n liked\n timestamp\n expTag\n coverUrls {\n cdn\n url\n __typename\n }\n photoUrls {\n cdn\n url\n __typename\n }\n animatedCoverUrl\n stereoType\n videoRatio\n __typename\n }\n canAddComment\n currentPcursor\n llsid\n status\n __typename\n }\n searchSessionId\n pcursor\n aladdinBanner {\n imgUrl\n link\n __typename\n }\n __typename\n }\n}\n" }注意的是这里data数据是字典,请求并不会是我们想要的结果,我们需要将他转换为json格式# 将字典转换为json格式 data = json.dumps(data)第五步:发送请求获取数据# 发送请求获取到的数据 response = requests.post(url, data=data, headers=headers)这是我们可以打印下结果,看获取到了没有print(response.json())上面控制台输出的就是我们获取的数据上图是网页上获取的数据,此时数据一样,说明我们获取的数据没问题,那么接下来就是提取视频地址了第六步:获取视频文案,视频地址我们获取到的是json格式的数据,看下这个结构看我标注的框框,你就会发现,视频地址和文案都在一层一层的最深层,其实也很简单首先前几个都是字典,所以在python中我们可以用[]获取# 解析数据 data_list = response.json()['data']['visionSearchPhoto']['feeds']此时我们再打印下,发现获取到了数据是[]开头的,说明是列表,也就意味着这个里面有很多个视频对象第七步:遍历这个列表,拿到每一个视频信息# 遍历拿到每一条 for feed in data_list:从每一条中获取文案和视频地址#每条视频的文案 caption=feed['photo']['caption'] #每条视频的视频地址 photoUrl=feed['photo']['photoUrl']我们打印下,看结果:以上就是我们要获取的数据了,接下来我们进行保存第八步:无水印保存到本地我们先将文案解析下,作为视频的标题保存,在这里我们用到了re库,正则表达式 new_caption = re.sub(r'[\/:*?"<>|\n\\]', '_', caption)请求每一个视频地址: # 请求视频的地址.content是二进制 rsp = requests.get(photoUrl).content最后就是下载视频了 # 下载视频 with open('video\\' + new_caption + '.mp4', mode='wb') as f: f.write(rsp) print(caption, '下载完成')运行下,看结果:本地文件夹;都是高清无水印视频都是一些简单的python知识,我也是刚开始学,算是一个入门案例了,大佬勿喷,代码放在Gitee了,需要自取。 Gitee地址
2021年12月19日
461 阅读
0 评论
4 点赞