仅可用于本地测试!
1.导入库
urllib库是HTTP的请求库,本次实践仅需要用到:
request模块:最基本的HTTP请求模块,可以用来模拟发送请求。
想要学习urllib其他模块可以通过官方文档了解更多
# encoding=utf-8
import requests
from urllib.request import urlopen
from urllib.request import Request
2.向服务器发送请求
headers是为了模拟浏览器,若不更改User-Agent,则会显示通过python访问
url 改为视频的url即可(F12找到视频url)
url = f'https://请改为视频下载的url/{i}.mp4'
# 定义headers信息
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) '
'Chrome/92.0.4515.131 Safari/537.36 SLBrowser/8.0.0.12022 SLBChan/103'}
# 创建Request对象
req = Request(url, headers=headers)
# 发送请求
response = urlopen(req)
3.下载视频
HTTP响应码200时为成功访问
视频保存的位置为脚本所在的位置(想要更改自行设置)
# HTTP响应码
recode = response.getcode()
if recode == 200:
print(f'连接正常,正在下载第{i}个视频,请稍后...')
response = requests.get(url, stream=True)
print(f"视频大小:"+str(len(response.content)/1024/1024)+"MB")
cont = 0
print(f'下载完成,正在保存第{i}个视频,请稍后...')
with open(f'spider{i}.mp4', 'wb') as video:
for chunk in response.iter_content(chunk_size=1024 * 1024):
video.write(chunk)
cont += 1
print(f"第{i}个视频保存成功!\n")
代码汇总
for i in range(1,3): #左开右闭
是循环的次数,按视频个数确定
# encoding=utf-8
# # # # # # #
# author: #
# tomoon16 #
# # # # # # #
import requests
from urllib.request import urlopen
from urllib.request import Request
print("START")
for i in range(1,3): #左开右闭
url = f'https://请改为视频下载的url/{i}.mp4'
# 定义headers信息
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) '
'Chrome/92.0.4515.131 Safari/537.36 SLBrowser/8.0.0.12022 SLBChan/103'}
# 创建Request对象
req = Request(url, headers=headers)
# 发送请求
response = urlopen(req)
# HTTP响应码
recode = response.getcode()
if recode == 200:
print(f'连接正常,正在下载第{i}个视频,请稍后...')
response = requests.get(url, stream=True)
print(f"视频大小:"+str(len(response.content)/1024/1024)+"MB")
cont = 0
print(f'下载完成,正在保存第{i}个视频,请稍后...')
with open(f'spider{i}.mp4', 'wb') as video:
for chunk in response.iter_content(chunk_size=1024 * 1024):
video.write(chunk)
cont += 1
print(f"第{i}个视频保存成功!\n")
print("OVER")