文中的文本及图片来自互联网,仅作学习、沟通交流应用,不具备一切商业行为,著作权归创作者全部,如有什么问题请立即在线留言以作解决
( 要想学习Python?Python学习 0, 255, 1)">import requests # 第三方控制模块 import pprint
四、自然环境配备
python 3.6
pycharm(专业为python打造出的一款在线编辑器) 自然环境构建 标准版收费
requests
五、网络爬虫实例一般流程(思路):
1.找数据信息所属的url地址(剖析网页页面网页页面<静态数据/动态性(抓包软件)>)
2.推送互联网要求(requests)
3.数据信息的分析(我们要的数据信息)
4.数据信息储存(当地\数据库查询)
六、寻找数据信息详细地址:
依照基本实际操作便是:
1、开启微信开发工具,挑选 network
2、点一下刷新网页、查询回到数据信息
可是这一网址和平时的静态页面各有不同,依照一切正常的网址它是有换页的,而这一网址是下降网页页面,才会出現新的视頻数据信息。
因此 依照流程应该是:
1、开启微信开发工具,挑选清除全部数据信息內容
2、下降网页页面
假如必须一个一个去找得话,是十分的不便且混日子,能够挑选拷贝一个视频的姓名或是公布视頻客户的姓名,在微信开发工具之中开展检索。
七、推送互联网要求寻找数据信息所属的url地址(剖析网页页面网页页面<静态数据/动态性(抓包软件):
# 1.找数据信息所属的url地址(剖析网页页面网页页面<静态数据/动态性(抓包软件)>) url = 'https://api-tinyvideo-web.yy.com/home/tinyvideosv2?' headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36'} params = {'data': '{"uid":0,"page":1,"pageSize":10}'} # 2.推送互联网要求(requests) response = requests.get(url=url, params=params, headers=headers) json_data = response.json() # pprint.pprint(json_data) # 3.数据信息的分析(我们要的数据信息) data_list = json_data['data']['data'] for data in data_list: username = data['username'] '.mp4' # 直播名字 flv avi rmvb resurl = data['resurl'] # 视频地址 # print(username, resurl) # 要求视頻数据信息 video_data = requests.get(url=resurl, headers=headers).content # 要求到的视頻数据信息
留意点:
我传的param的主要参数和连接有一些不一样,我只传到了data,由于如果是全部的主要参数都传到得话,那麼回到的結果是字符串数组方式,那样还会继续多一些流程
1、正则匹配只获取里边的json文件格式数据信息;
2、字符串数组转json。
八、开展数据信息储存:
# 4.数据信息储存(当地\数据库查询) with open('video\\' username, mode='wb') as f: f.write(video_data) print('储存进行:', username)