短视频爬取及blob反扒

爬取梨视频中的短视频数据

# 爬取梨视频中的短视频数据:
# url:https://www.pearvideo.com/category_1
# 将最热板块下的短视频数据进行爬取且存储到本地。


import re
url = "https://www.pearvideo.com/category_1"
response = requests.get(url=url,headers=headers).text
tree = etree.HTML(response)
tree = tree.xpath("//ul[@id='listvideoListUl']/li")
for i in tree[0:3]:
    z = i.xpath(".//a/@href")[0]
    url = "https://www.pearvideo.com/"+z
    response = requests.get(url=url,headers=headers).text
    tree =etree.HTML(response)
    title =tree.xpath("//div[@id='detailsbd']/div[1]/div[2]/div/div[1]/h1/text()")[0]
    #文件名不要有特殊符号!像管道符|不能有!  其他的,.:尽量不要有,但是可以接受
    if "|" in title:
        title = title.replace("|","")
    tree = tree.xpath("//div[@id='detailsbd']/div[1]/script[1]/text()")[0]
    rule = 'srcUrl="(.*?)"'
    result = re.findall(rule,tree)[0]
    response =requests.get(url=result,headers=headers).content
    with open("zhou/"+title+".mp4","wb") as f:
        f.write(response)
    

以上获取梨视频发现他是动态加载的video中src的url地址。所以我们无法可见即可得。

经过抓包工具中发的get请求中response选项卡中发现srcUrl中有这个src属性。并且里面得网址就是需要的视频数据网址。所以找到那块标签获取text文本内容,通过正则筛选出来url,然后去访问

爬取梨视频中的短视频数据(blob)

一些网站的视频为了防止下载,通常会采用blob加密的做法;

其实这不是特殊的视频传输协议,只是一种 HTML5 Video Blob格式。

并且大部分网页视频的格式都是 m3u8。

去此网站下载解析器:http://www.pc6.com/softview/SoftView_372291.html

把m3u8后缀得网址输入进去。解析器会自动给你下载

打开下载路径他就在其中

posted @ 2020-04-12 21:13  zz洲神在此  阅读(2882)  评论(0编辑  收藏  举报