Python 短视频爬虫教程

作者:嗨学编程 时间:2022-02-13 00:17:33 

好难受,上次发了做游戏的居然没人看,每天为了给你们写啥,老夫心都操碎了~

Python 短视频爬虫教程

真的是,今天来给大家爬一波短视频网站吧,都是些很养眼的~

Python 短视频爬虫教程

网站地址在代码里面,大家用心一下就能看到了。

使用的软件


python 3.8
pycharm 2021.2

模块


requests
parsel
re
concurrent.futures
time
warnings

不会安装模块看这篇:python模块的安装以及安装失败的解决方法

知道你们不想看那些步骤,我直接上代码吧


import requests
import parsel
import re
import concurrent.futures
import time
import warnings

# 取消警告
warnings.filterwarnings("ignore")

def get_html(url):
   """发送请求获取网页源代码"""
   html_data = requests.get(url=url, verify=False).text
   return html_data

def parse_data_1(html_data):
   """第一次解析, 拿到所有的详情页链接"""
   selector = parsel.Selector(html_data)
   url_list = selector.xpath('//a[@class="meta-title"]/@href').getall()
   return url_list

def parse_data_2(html_data):
   """第二次解析, 获取视频链接"""
   video_url = re.findall('url: "(.*?)",', html_data)[0]
   return video_url

def save(video_url):
   """保存视频"""
   title = video_url.split('/')[-1]    # 取链接当中的字段作为标题
   video_data = requests.get(video_url, verify=False).content    # 发送网络请求
   with open(f'video/{title}', mode='wb') as f:
       f.write(video_data)
   print(title, "爬取成功!!!")

start_time = time.time()
url = 'https://www.520mmtv.com/hd/rewu.html'
# 1. 向目标网站发送请求
html_data = get_html(url=url)
# 2. 第一次解析数据 提取详情页链接
url_list = parse_data_1(html_data=html_data)
for info_url in url_list[:10]:
   # 3. 向详情页发送请求
   html_data_2 = get_html(url=info_url)
   # 4. 第二次解析数据 提取视频播放地址
   video_url = parse_data_2(html_data=html_data_2)
   # 5. 保存视频
   save(video_url=video_url)
print('花费时间:', time.time() - start_time)

来源:https://blog.csdn.net/fei347795790/article/details/121432241

标签:Python,爬虫教程,短视频
0
投稿

猜你喜欢

  • Python实现身份证前六位地区码对照表文件

    2022-12-25 10:55:16
  • Python最长回文子串问题

    2023-10-02 16:13:21
  • 简单谈谈Python中的反转字符串问题

    2022-02-24 11:55:07
  • Web标准学习:CSS样式书写风格

    2008-03-25 09:37:00
  • python QT界面关闭线程池的线程跟随退出完美解决方案

    2023-01-01 11:56:21
  • 避坑:Sql中 in 和not in中有null值的情况说明

    2024-01-22 17:01:33
  • mysql 控制台程序的提示符 prompt 字符串设置

    2024-01-26 01:42:11
  • Python+flask实现restful接口的示例详解

    2023-03-23 08:34:55
  • PHP addAttribute()函数讲解

    2023-06-06 09:03:45
  • Linux操作系统下MySQL数据库的使用方法

    2008-12-26 09:24:00
  • python 删除列表里所有空格项的方法总结

    2023-01-28 19:37:24
  • Sanic框架请求与响应实例分析

    2023-05-26 00:07:00
  • ProC 连接Oracle代码

    2009-06-10 18:12:00
  • 对Pytorch神经网络初始化kaiming分布详解

    2022-08-27 01:39:50
  • python实现按首字母分类查找功能

    2023-10-13 11:05:09
  • Python利用Beautiful Soup模块创建对象详解

    2023-05-17 23:24:58
  • 关于vue-i18n在单文件js中的使用

    2024-05-09 09:38:48
  • Python使用socket模块实现简单tcp通信

    2021-04-20 14:54:14
  • Python将多个list合并为1个list的方法

    2023-10-17 10:13:17
  • ASP连接Access数据库的几种方法

    2013-06-01 20:33:19
  • asp之家 网络编程 m.aspxhome.com