只要网速够快,小视频看完一个删一个,任性!Python爬取小视频

时间:2022-07-25
本文章向大家介绍只要网速够快,小视频看完一个删一个,任性!Python爬取小视频,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

前言

yy平台,直播界的先驱,有很多主播会把一些自己的直播精彩看点上传到该平台下的小视频栏目中

今天带大家爬取yy小视频栏目中所有的小视频

课程知识点:

1、动态数据抓包演示

2、json数据解析方法

3、视频数据保存

环境介绍:

python 3.6

pycharm

requests

爬虫的一般思路:

1、分析目标网页,确定爬取的url路径,headers参数

2、发送请求 -- requests 模拟浏览器发送请求,获取响应数据

3、解析数据

4、保存数据

导入工具

import requests
import re
import pprint

分析目标网页,确定爬取的url路径,headers参数

url地址:

参数

url = 'https://api-tinyvideo-web.yy.com/home/tinyvideos?'
headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36',
}

param = {
    'data': '{"uid":0,"page":1,"pageSize":10}',
}

发送请求 -- requests 模拟浏览器发送请求,获取响应数据

response = requests.get(url=url, headers=headers, params=param)
data = response.json()
# print(data)

解析数据

# 提取字段
data_list = data['data']['data']

# 循环遍历
for data1 in data_list:
    resdesc = data1['resdesc'] + '.mp4'  # 视频的题目
    resurl = data1['resurl']  # 视频的url地址
    # print(resdesc, resurl)

    # new_title = change_title(resdesc)

    video_data = requests.get(resurl, headers=headers).content

保存数据

with open('video\' + resdesc, mode='wb') as f:
        print('正在下载:', resdesc)
        f.write(video_data)

运行代码,效果如下: