抓取六房间小姐姐小视频

六房间地址:https://www.6.cn/

方式一:通过浏览器自带开发工具进行查看抓取

1、打开浏览器。进入六房间网页,点击小视频。F12打开开发工具,打开Network,刷新网页后,可以看到,在Network—>Headers中可以查看到请求的URL。

 

 2、在Network—>Preview中可以查看到url请求到JSON文件。

 

 还可以通过把URL地址:https://v.6.cn/minivideo/getlist.php?act=recommend&page=1&pagesize=20 新打开一个浏览器页面进行查看。可以看到获得的数据是为json数据。

 

 

 3、在获得URL和json数据后,我们就可以编写代码进行小视频的爬取了。

import requests

def Video_URL():
	'''请求url地址,得到网页数据,并且进行网页数据的提取(json)'''
	url="https://v.6.cn/minivideo/getlist.php?act=recommend&page=1&pagesize=20"
	response=requests.get(url).json()
	print(response)

	#获取每个小视频的标题和播放URl
	data=response['content']['list']
	for i in data:
		title=i['title']
		palyur=i['playurl']
		Video_Downloads(title,palyur)

def Video_Downloads(title,palyurl):
	response=requests.get(palyurl)
	#在py执行文件同路径下,建一个video的文件夹,用于存放小视频文件。文件保存 a 文件追加 进制文件读写
	with open('video/{}.mp4'.format(title),'ab')as f:
		f.write(response.content)
		print('正在下载{}……'.format(title))

Video_URL()

  以上代码是获取一页的小视频的代码,调整修改下可获取多页小视频:

import requests

def Video_URL(page):
	'''请求url地址,得到网页数据,并且进行网页数据的提取(json)'''
	url="https://v.6.cn/minivideo/getlist.php?act=recommend&page={}&pagesize=20".format(page)
	response=requests.get(url).json()
	print(response)

	#获取每个小视频的标题和播放URl
	data=response['content']['list']
	for i in data:
		title=i['title']
		palyur=i['playurl']
		Video_Downloads(title,palyur)

def Video_Downloads(title,palyurl):
	response=requests.get(palyurl)
	#在py执行文件同路径下,建一个video的文件夹,用于存放小视频文件。文件保存 a 文件追加 进制文件读写
	with open('video/{}.mp4'.format(title),'ab')as f:
		f.write(response.content)
		print('正在下载{}……'.format(title))

for page in range(1,20):
'''获取多页小视频'''
	Video_URL(page)

  

 方式二:通过抓包工具Fiddler来进行抓包分析获取url和json数据。

1、下载fiddler工具包。

官网下载https://www.telerik.com/download/fiddler(版本为英文版 fidder4) 
汉化版下载:http://soft.huweishen.com/soft/302.html(直接是一个安装包,解压就可以用) 

腾讯软件下载地址:https://pc.qq.com/detail/10/detail_3330.html

 

fiddler配置:(因为涉及ssl)

Tools—>"options",

  

https设置:

勾选后需要安装安全证书,如果是win 7中不会提示安装安全证书,会报错:creation of the root certificate was not successful

解决办法参考:fiddler报错:creation of the root certificate was not successful 证书安装不成功

  

 

connections设置:监听端口

将Fiddler listens on port设为8888,勾选Allow remote computers to connect

 

 

 代理设置完成,重启Fiddler配置生效。

 

 2、通过夜神模拟器来进行抓包分析。

夜神模拟器下载:https://www.yeshen.com/ 

 

 安装后夜神模拟器配置:

①开启root权限

 

②设置代理

 

 鼠标左键长按,打开修改网络

 

代理选择“手动”,代理服务器主机名填写电脑的ip就行了(windows系统可用ipconfig查看),端口注意和fiddler·设置的端口号保持一致。

 

 

 ③给夜神模拟器安装https证书

 打开浏览器

 

 在地址栏输入:http://ip地址:端口。点击进行下载。

 

 

 

 点击下载进行安装。出现

 

 凭证 用途如果两个都不知道怎么使用的话,那么就都安装。

 

在fiddler和夜神模拟器配置好的情况下就可以进行抓取数据。例如

 抓取到的url地址为:https://v.6.cn/coop/mobile/index.php?act=recommend&padapi=minivideo-getlist.php&page=1

把该地址在浏览器中打开,可以看到是为json的数据格式:

 

 python代码如下:

import requests

def Video_URL(page):
	'''请求url地址,得到网页数据,并且进行网页数据的提取(json)'''
	url="https://v.6.cn/coop/mobile/index.php?act=recommend&padapi=minivideo-getlist.php&page={}".format(page)
	response=requests.get(url).json()
	print(response)

	#获取每个小视频的标题和播放URl
	data=response['content']['list']
	for i in data:
		title=i['title']
		palyur=i['playurl']
		Video_Downloads(title,palyur)

def Video_Downloads(title,palyurl):
	response=requests.get(palyurl)
	#在py执行文件同路径下,建一个video的文件夹,用于存放小视频文件。文件保存 a 文件追加 进制文件读写
	with open('video/{}.mp4'.format(title),'ab')as f:
		f.write(response.content)
		print('正在下载{}……'.format(title))

for page in range(1,20):
	Video_URL(page)

 

posted @ 2019-12-18 16:38  奔跑中的兔子  阅读(738)  评论(0编辑  收藏  举报