Python批量采集无水印短视频内容
创始人
2024-05-08 08:39:40
0

前言

短视频流行起来可不是一年两年了,现在很多年轻人都在玩短视频,有些的单纯就是看看,而有些的就是自己发视频

我每天刷视频,一刷就停不下来,应该还是有蛮多人跟我一样的吧

那有没有想法用自己所学的python知识,实现一下采集这些视频内容呢

今天就给你们分享一下,如何用python批量采集某短视频内容【并且无水印】

在这里插入图片描述

环境准备

环境使用

  • Python 3.8
  • Pycharm

模块使用

  • requests >>> pip install requests
  • selenium >>> pip install selenium==3.141.0 <需要浏览器和浏览器驱动>
  • re
  • json

代码实现

导入模块

源码.点击领取即可

import requests
import re
import json
from pprint import pprint
from selenium import webdriver
import time

创建浏览器对象, 实例化对象 自动打开浏览器

driver = webdriver.Chrome()

访问网址

driver.get('https://****.com/user/MS4wLjABAAAAQcVVV9POy-3J4FjXQfZGrFEOyzsri0KpKu3UdIVu72M')

执行页面滚动的操作

def drop_down():for x in range(1, 40, 4):  # 1 3 5 7 9  在你不断的下拉过程中, 页面高度也会变的time.sleep(1)j = x / 9  # 1/9  3/9  5/9  9/9# document.documentElement.scrollTop  指定滚动条的位置# document.documentElement.scrollHeight 获取浏览器页面的最大高度js = 'document.documentElement.scrollTop = document.documentElement.scrollHeight * %f' % jdriver.execute_script(js)

可以直接定位元素提取内容

lis = driver.find_elements_by_css_selector('.Eie04v01')
for li in lis:url = li.find_element_by_css_selector('a').get_attribute('href')

1. 发送请求

print(url)
time.sleep(1)

模拟伪装

 headers = {# user-agent 用户代理 表示浏览器基本身份信息'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'}

发送请求

response = requests.get(url=url, headers=headers)

2. 获取数据

获取服务器返回响应数据
开发者工具: response <网页源代码>

3. 解析数据

提取我们想要的数据内容

视频标题

视频播放链接

python学习交流Q群:309488165 ### 源码领取# 提取标题title = re.findall('(.*?)', response.text, re.S)[0]# 替换一下特殊字符title = re.sub(r'[\/:*?"<>|\n]', '', title)# 提取视频信息video_info = re.findall('