Python 短视频爬虫教程

 更新时间:2021年11月22日 11:08:15   作者:嗨学编程  
今天给大家带来一篇爬虫小教程,很简单的几十行代码就可以实现了,爬取的目标是短视频,感兴趣的同学快来跟着小编往下看吧

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

在这里插入图片描述

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

在这里插入图片描述

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

使用的软件

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)

到此这篇关于Python 短视频爬虫教程的文章就介绍到这了,更多相关Python 爬虫教程内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python实现字符串模糊匹配详解

    Python实现字符串模糊匹配详解

    这篇文章主要为大家详细介绍了Python实现字符串模糊匹配的相关知识,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以了解下
    2023-11-11
  • python中温度单位转换的实例方法

    python中温度单位转换的实例方法

    在本篇文章里小编给大家整理关于python中温度单位转换的实例方法,有需要的朋友们可以学习参考下。
    2020-12-12
  • Python文件操作利器的十大库使用实例

    Python文件操作利器的十大库使用实例

    Python拥有多个库用于文件操作,提供了各种功能来管理、读取和写入文件,这些库覆盖了从基本的文件系统交互到高级的文件压缩和数据格式处理等多个方面,文件操作是编程中不可或缺的一部分,因此了解这些库对于开发者来说是至关重要的
    2024-01-01
  • Python类super()及私有属性原理解析

    Python类super()及私有属性原理解析

    这篇文章主要介绍了Python类super()及私有属性原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Python 、Pycharm、Anaconda三者的区别与联系、安装过程及注意事项

    Python 、Pycharm、Anaconda三者的区别与联系、安装过程及注意事项

    这篇文章主要介绍了Python,Pycharm,Anaconda三者的区别与联系、安装过程及其注意事项,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • 8个python新手入门项目

    8个python新手入门项目

    文将介绍8个带有代码的Python项目,这些项目将帮助大家增强编程能力,这些项目涵盖了各种主题和难度级别,助力大家成长为一个Python开发者
    2024-01-01
  • 在Qt中正确的设置窗体的背景图片的几种方法总结

    在Qt中正确的设置窗体的背景图片的几种方法总结

    今天小编就为大家分享一篇在Qt中正确的设置窗体的背景图片的几种方法总结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 详解Python编程中对Monkey Patch猴子补丁开发方式的运用

    详解Python编程中对Monkey Patch猴子补丁开发方式的运用

    Monkey Patch猴子补丁方式是指在不修改程序原本代码的前提下,通过添加类或模块等方式在程序运行过程中加入代码,下面就来进一步详解Python编程中对Monkey Patch猴子补丁开发方式的运用
    2016-05-05
  • python中array数组添加一行或一列数据的具体实现

    python中array数组添加一行或一列数据的具体实现

    这篇文章主要给大家介绍了关于python中array数组添加一行或一列数据的具体实现,最近经常使用到数组方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • jupyter闪退怎么办?jupyter闪退问题的解决

    jupyter闪退怎么办?jupyter闪退问题的解决

    这篇文章主要介绍了jupyter闪退怎么办?jupyter闪退问题的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01

最新评论