python 爬虫爬取阿婆主的全部视频详情

python 爬虫爬取阿婆主的全部视频详情

很多时候,我们在B站上喜欢一个阿婆主,我们想要把他(她)发出的所有的视频链接都获取下来时候,这时候就会很麻烦,毕竟如果视频只要一多,就会很麻烦了,很耗时间了。

这时候,使用爬虫进行爬取就是一个非常好的操作了。

下面就来介绍一下吧。
以B站上面一个我比较喜欢的电影视频阿婆主(bili_51592201250)作为例子吧。

1、首先打开B站,在搜索框中输入对应需要搜索的内容(bili_51592201250),之后点击搜索;

2、这时候能够看到如下图所示:
在这里插入图片描述

3、这个页面就是我们需要进行爬取并且处理的页面,废话不多说,直接分析页面,上代码;

4、直接从搜索结果可以看到这个阿婆主发布的视频有多少个页面,如下图所示(4页),这个页码可以选择使用代码进行获取,但是总的来说直接从页面中获取简单;
在这里插入图片描述
5、分析该页面对应的url链接,可以得知如下:
第一个页面url= https://search.bilibili.com/all?keyword=bili_51592201250&page=1
第二个页面url= https://search.bilibili.com/all?keyword=bili_51592201250&page=2
以此类推(在发起请求时候可以使用一个小循环进行逐个爬取)

6、发起请求前的准备

import requests,parsel,re
from fake_useragent import UserAgent

ua = UserAgent()
headers = {
   "User-Agent":ua.random}     # 设置请求头

7、发起请求

try:
    res = requests.get(url,headers=headers)         # 如果遇到反爬技术,可以考虑添加代理proxies={"https":"124.90.51.71:8888"}
    if res.status_code == 200:
        html = parsel.Selector(res.text)
        urls = html.xpath('//ul[@class="video-list clearfix"]/li[@class="video-item matrix"]/a/@href').extract()  # 每个视频对应的url链接
        titles = html.xpath('//ul[@class="video-list clearfix"]/li[@class="video-item matrix"]/a/@title').extract()   # 每个视频对应的标题
        times = html.xpath('//ul[@class="video-list clearfix"]/li[@class="video-item matrix"]/a/div/span[1]/text()').extract()    # 每个视频对应的时间长度
        plays = html.xpath('//span[@title="观看"]/text()').extract()  # 每个视频对应的播放量
  
except Exception as e:
    # 如果上面的请求出现问题,那么一般就是反爬机制的作用,可以考虑在这里面添加代理进行爬取
    # 或者也可以寻找其他的接口,获取up主的详情信息,记得B站有提供一个接口的
    print("Fail:",e)
    pass

代码量并不多,直接就可以获取到了对应的阿婆主发的所有的视频链接以及视频对应的其他一些信息,是不是非常的简单,快去尝试一下吧。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115145.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 数据库怎么创建学生表_设计数据库,创建数据库和数据表

    数据库怎么创建学生表_设计数据库,创建数据库和数据表知识点:数据库表的相关概念、创建数据库表的方法、设计数据库表、向数据库表中插入数据、建立不同数据库表之间的关系、删除数据库表。1、数据表相关的一些概念1.1数据库里的数据是如何保存的?数据库到底是怎么存储数据的?比如要把学生信息存储到数据库里,能把学生塞进数据库吗?肯定是把学生的数据信息抽象出来,把一些重要信息以文字或数字的形式保存到数据库中去。…

    2022年9月25日
    0
  • Storm流处理项目案例

    Storm流处理项目案例

    2022年4月2日
    48
  • DrawImage方法详解(转载)

    DrawImage方法详解(转载)Image和Bitmap类概述GDI+的Image类封装了对BMP、GIF、JPEG、PNG、TIFF、WMF(Windows元文件)和EMF(增强WMF)图像文件的调入、格式转换以及简单处理的功能。

    2022年7月1日
    21
  • DeviceIoControl解读

    DeviceIoControl解读设备驱动程序可以被当作内核模式函数包来看待,I/O控制代码就是用来指定访问其中的哪个函数的。DeviceIoControl函数的dwIoControlCode参数就是这个代码,它指出了我们需要进行的操作,以及如何进行操作。 控制代码是32位数字型常量,可以CTL_CODE宏来定义,它们定义在winioctl.inc和ntddk.inc文件中。 控制代码中各数据位字段的含义如下: ◎

    2022年9月6日
    2
  • 开启新篇章——软工视频总结

    开启新篇章——软工视频总结开启新篇章——软工视频总结

    2022年4月24日
    46
  • SOAP 是什么东西? 介绍介绍「建议收藏」

    SOAP 是什么东西? 介绍介绍「建议收藏」  如果你的安装路径(installationpaths)和上面使用的不同,你需要更正它们,然后关闭和重启Tomcat以使它们生效。这样,你就有为运行SOAP作好了准备。但是现在,我要忘记有关的技术部分,来学一点理论知识。  SOAP意思是简单对象访问协议(SimpleObjectAccessProtocol)。的确如它的名字一样,SOAP是很简单的。它是一个基于XML的协议,允许程

    2022年7月24日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号