B站的一些东西的爬取

吼吼吼,在B站科技区(舞蹈区)学习的时候,突然发现可不可以爬取B站的一些东西呢?
just do it

1、分析网站,详情页网址构造

爬取的网址(搜索词:抖音)

可以看到,这是一页一页的翻页的,而且告诉了最后一页,这不可谓不良心网站了。而我要做的是点进去每一个视频去得到里面的内容。

也就是上面圈出来的内容了,不是吧,阿sir这随手一点就是plmm。hhh
好!观察(看)完后,进入网页检查部分,要得到每个视频的详情网址。

可以看到,这里可以得到详情页的网址,那么这里后续将会采取Xpath进行提取,但是得到的网址还不完善,所以还要构建一手网址。
具体代码如下:

a=[]###获取每一个视频的详细网址
for m in range(1,51):###要得到50页的所有的视频链接res=requests.get('https://search.bilibili.com/all?keyword=%E6%8A%96%E9%9F%B3&from_source=nav_search_new&page='+str(m),headers=headers)s=BeautifulSoup(res.text,'lxml')a=a+['https:'+j  for j in[i['href'] for i in s.find_all(name='a',class_='title')]]

2、详情页的数据得到

当我进入到详情页的时候,自以为就是很简单的静态网站,正准备开启音乐开始创作之时,发现只能得到发布时间这个字段,果然,事情并不是想象的那么简单。那么既然在前端找不到的东西,又能在网页上出现,它就大概率在后端。也就是动态网站,这样看来这就是个动静结合的网站了。好!打开检查网页,选取XHR文件:

我人傻了。。。不可能一个一个去点吧。这个时候按住Ctrl+F出来搜索框:

那么搜索什么呢?按理说是要得到什么就搜索什么,于是我就尝试着搜索了播放量,然后得到了一堆文件,随便检查几个文也就找到了一个json网页

这个网址中就有我们想要的东西,观察得到,只有最后的aid=后面的东西会变化,那么如何得到这个东西呢?直觉告诉我,在网页响应体中可以得到!抱着试一试的心态,我去找了,结果:

是真的牛比,我只需要用正则得到那个数字就好了。在得到这些后,利用代码得到数据:

times=[]
view=[]
danmaku=[]
like=[]
coin=[]
favorite=[]
share=[]
reply=[]
for n in range(len(a)):ress=requests.get(a[n],headers=headers)times=times+ht.xpath('//*[@id="viewbox_report"]/div[1]/span[2]/text()')zz=re.search('<meta.*?"https://www.bilibili.com/video/av(\d+)/">',ress.text).group(1)###得到最终url的变化部分的数字ree=requests.get('https://api.bilibili.com/x/web-interface/archive/stat?aid='+zz,headers=headers)###构建json网址js=ree.json()['data']view.append(js['view'])###播放量danmaku.append(js['danmaku'])###弹幕like.append(js['like'])###点赞coin.append(js['coin'])###硬币favorite.append(js['favorite'])###收藏share.append(js['share'])###分享reply.append(js['reply'])###评论print(n)time.sleep(5)

我设置了个停5s,毕竟还是要给B站个面子(其实是太快了会报错)

3、总结

化动为静,注意观察,保持耐心

注:本次所抓取的数据仅为学习研究之目的

B站的一点点东西的爬取相关推荐

  1. python爬b站评论_一个简单的爬取b站up下所有视频的所有评论信息的爬虫

    心血来潮搞了一个简单的爬虫,主要是想知道某个人的b站账号,但是你知道,b站在搜索一个用户时,如果这个用户没有投过稿,是搜不到的,,,这时就只能想方法搞到对方的mid,,就是 space.bilibil ...

  2. python爬取b站数据_如果利用Python爬取B站上千万数据?B站直播都是大屌萌妹吗?...

    粉丝独白 说起热门的B站相信很多喜欢玩动漫的,看最有创意的Up主的同学一定非常熟悉.我突发奇想学Python这么久了,为啥不用Python爬取B站中我关注的人,已经关注的人他们关注的人,看看全站里面热 ...

  3. 使用Scrapy框架,爬取b站番剧信息。

    使用Scrapy框架,爬取b站番剧信息. 感觉好久没写爬虫的,今天看了在b站浏览了一会儿,发现b站有很多东西可以爬取的,比如首页的排行榜,番剧感觉很容易找到数据来源的,所以就拿主页的番剧来练练手的. ...

  4. 零基础如何学好python爬虫?之python爬取B站小视频

    B 站真是个神奇的网站.找不到资料了,去 B 站逛一逛,保准有你满意的东西. 前几天写了个爬虫,用 path.re.BeautifulSoup 爬取的 B 站 python 视频,如果要爬取多页的话 ...

  5. 零基础如何学好python爬虫?python爬取B站小视频

    B 站真是个神奇的网站.找不到资料了,去 B 站逛一逛,保准有你满意的东西. 前几天写了个爬虫,用 path.re.BeautifulSoup 爬取的 B 站 python 视频,如果要爬取多页的话 ...

  6. python爬b站评论_Python爬虫入门教程 32-100 B站博人传评论数据抓取 scrapy

    1. B站博人传评论数据爬取简介 今天想了半天不知道抓啥,去B站看跳舞的小姐姐,忽然看到了评论,那就抓取一下B站的评论数据,视频动画那么多,也不知道抓取哪个,选了一个博人传跟火影相关的,抓取看看.网址 ...

  7. python中scrapy可以爬取多少数据_python scrapy框架爬取某站博人传评论数据

    1. B站博人传评论数据爬取简介 今天想了半天不知道抓啥,去B站看跳舞的小姐姐,忽然看到了评论,那就抓取一下B站的评论数据,视频动画那么多,也不知道抓取哪个,选了一个博人传跟火影相关的,抓取看看.网址 ...

  8. python爬取b站评论_Python爬虫框架:scrapy抓取B站博人传评论数据

    1. B站博人传评论数据爬取简介 今天想了半天不知道抓啥,去B站看跳舞的小姐姐,忽然看到了评论,那就抓取一下B站的评论数据,视频动画那么多,也不知道抓取哪个,选了一个博人传跟火影相关的,抓取看看.网址 ...

  9. 【爬虫】从B站或央视网爬取视频下载链接

    import requests from bs4 import BeautifulSoup import re import senddetail import sys import pandas a ...

最新文章

  1. 寒冬 winter:代码无捷径,只怕有心人
  2. 数据结构和算法系列5 七大排序之冒泡排序和快速排序
  3. PHP多进程编程初步
  4. 呼叫我,或异步REST
  5. c# sizeof_C#程序演示sizeof()运算符的示例
  6. 哈尔滨理工C语言程序设计精髓_【注意啦】哈尔滨工业大学2020考研计算机专业课调整,难度提升!...
  7. Unity GPU Instancing的使用尝试
  8. idea给main方法附带参数
  9. [转] Official Microsoft Team Blogs / Microsoft Blogs
  10. nohup的程序能不能再转到前台查看啊?_小程序开发之路入门
  11. 机器人控制算法----模糊控制
  12. qt中drawline函数的参数_c++ - Qt-drawPolyline和drawLine之间的区别 - 堆栈内存溢出
  13. python中的if语句
  14. 学校计算机管理员安全责任书,实验室管理员安全责任书
  15. 机器人视觉硬件方案设计对比
  16. stm32L152 使用内部内部flash做EEPROM 出FLASH_ERROR_WRP问题及解决办法
  17. UEFI Boot Flow 系列之 SEC Phase
  18. 未来虚拟经济的雏形,SecondLife,全新的概念。。。
  19. 网络舆情数据分析系统技术方案
  20. XMPP协议的基本理解

热门文章

  1. Echarts地图下钻,省钻到市,市钻到县,县钻到乡
  2. 《沉默的真相》观后理解
  3. 2017.10.23 二周第一次课
  4. 综合布线系统需求分析
  5. python按键脚本会被检测封号_js调用python脚本文件挂会封号吗
  6. MMC子系统识别SD设备过程简述
  7. 孟非《随遇而安》 读书笔记
  8. git 恢复 被覆盖
  9. springboot环境搭配,pom.xml报错问题
  10. fatal error C1189: #error 错误解决方案