# 伪装
import requests
# 解析数据
from lxml import etree
#从给定的网址下载文件,并将其保存到本地文件系统中的指定位置
from urllib import request
'''
headers内容获取方式:
使用浏览器的开发者工具:
打开你想爬取的网页。
右键点击页面,选择“检查”或者按F12打开开发者工具。
切换到“网络”(Network)标签页。
刷新页面,找到第一个请求(通常是网页本身),点击它。
在右侧的“头”(Headers)标签下,你会看到请求的headers和响应的headers。
复制请求的headers部分,这通常包含诸如User-Agent、Accept等字段。
'''
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 "
"(KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"
}
# 将数据源地址,赋值给一个别名叫url
url = 'https://ibaotu.com/shipin/7-0-0-0-0-2.html'
# 伪装成浏览器去访问!
res = requests.get(url, headers=headers)
# 获取网页的一手数据(原文)--一堆杂乱的数据
data_text = res.text
# 使用代码去把这堆杂乱的数据进行解析 lxml 第三方库导入
data_html = etree.HTML(data_text)
# 使用程序去一手数据中筛选 xpath(正则表达式技术)所有代码开头长 video preload="none"开头的视频代码块
video = data_html.xpath('//video[@preload="none"]')
# 视频Python的循环 for循环---别名:i
for i in video:
视频地址='https:'+i.xpath('./@src')[0]
# 工具---第三方库导入
request.urlretrieve(视频地址,r'D:\Python\\'+str(video.index(i))+'.mp4')
# 使用程序去一手数据中筛选 xpath(正则表达式技术)所有代码开头长 div class="show-image"开头的视频代码块
code_block = data_html.xpath('//div[@class="show-image"]')
for a in code_block:
imgsrc = "https:" + a.xpath("./img/@data-src")[0]
imgname = a.xpath('./img/@alt')[0]
request.urlretrieve(imgsrc, r'D:\Python\\' + imgname + '.jpg')
Python爬取网页视频
最新推荐文章于 2024-09-17 23:15:58 发布