Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

bilibilispider

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bilibilispider

这是一个用于个人获取b站数据的前端爬虫库,请求部分由我的项目 JSpider 2.0 完成,而数据转换成 xlsx 文件的部分由 sheetjs 完成。而相关js插件都是通过 jsdelivr 的 api 导入的。

  • 0.5.5
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
1
Maintainers
1
Weekly downloads
 
Created
Source

Bilibili Spider库

简介

这是一个用于个人获取b站数据的前端爬虫库,请求部分由我的项目 JSpider 2.0 完成,而数据转换成 xlsx 文件的部分由 sheetjs 完成。而相关js插件都是通过 jsdelivr 的 api 导入的。

这个库可以实现输入简单的几个字 直接爬取到 xlsx 文件!!

没错,一步到位,所有的数据直接转化为 Excel 能够打开的文件,前端爬虫就是如此轻松!

这个库仅仅用于个人爬虫研究,请勿用于非法行为。

作者的闲聊

日期:2021-1-4

我在练习爬虫的时候,对 b站的 api 稍有研究(需要做作业),所以写了一下 b 站的爬虫,发现 b 站的 api 没有设置很多的反爬手段(从前端JS的角度看毫无难度),所以整合了一下 b 站的爬虫代码,做成了这个库。

这个库用在哪里?怎么用?

这个库用在 https://www.bilibili.com/页面 的开发者工具的 Console 中,注意在其他网站可能会不成功,直接在 b站主页 是肯定能爬取的。

(开发者工具不会用?右键 -> 检查 -> Console 页面)

在那里输入下面这行代码

import('https://cdn.jsdelivr.net/npm/bilibilispider/index.js')

等待提示加载完成即可。对的,没有复杂的安装代码,自动解决

然后你可以输入 _Bilibili 看看有什么工具可以使用。

各个工具的使用方式

全部的函数都封装在 _Bilibili 这个变量里面了,用就完事了。 为了防止我以后忘记了怎样使用这个爬虫工具,我顺便把函数的名字多加了中文版本,中文名称没什么好说的。

函数名例子注意事项
全站排名获取_Bilibili.全站排名获取()这是获取爬取的时候的时间点的排名
全部番剧信息收集_Bilibili.全部番剧信息收集()这是获取爬取的时候B站的番剧信息
在站内搜索_Bilibili.在站内搜索('搜索信息')这是直接爬取全部的搜索信息,注意是全部,大概数量在1000左右
UP主相簿信息_Bilibili.UP主相簿信息(000000)爬取 ID 为 000000 的 UP 主的相簿信息
UP主视频信息_Bilibili.UP主相簿信息(000000)爬取 ID 为 000000 的 UP 主的视频信息
BV转AV_Bilibili.BV转AV('BV0000000')转换BV号为AV号
某视频的评论区_Bilibili.某视频的评论区(0000000)爬取 AV号 为 000000 的视频评论区
某些视频的信息_Bilibili.某些视频的信息(['000000'])爬取BV号为000000(可以为数组)的视频信息

关于B站的各种id 2333

B 站ID有好多种,找了我好久菜看懂

意义前缀
第一代视频IDav,aid
第二代视频IDbv,bid,bvid
专栏IDcv,cvid
番剧编号ep
UP主编号mid
好像是统一的编号cid
看情况,这个出现在请求参数种,一般和aid一致oid
一般来说,只要是视频都有aid,包括番剧和普通的视频,专栏使用 cvid。

使用者注意

如果是做一个作业的话,是可以直接使用的,b 站没有太严格的反爬措施,只要不是并发 3,delay 0,数量在1000 就没有多大的问题,如果请求过快,会导致你的浏览器有一段时间请求不了b站的信息,表现为打不开网页或数据不会刷新,但不用担心,等一会就会正常的。

所有的请求默认都会从浏览器缓存中取出。也就是说,你使用过一次函数,第二次使用它时,如果浏览器会优先从缓存中找这些结果。

关于这个项目

这个项目尚未完成,我想把评论区和视频的爬虫脚本也做了,但是考虑到视频下载的话很难做,而且有油猴插件已经可以完成这个任务了,所以想要获取视频的同学还是用插件吧。

关于 JSpider 2.0 系列

JSpider 2.0 是关注于前端如何去快速爬取一些URL的库,在我编写的时候还没有形成对数据的保存意识。在学过前端存储之后,发现完全可以在浏览器里面存数据(而且我的上一个大型爬虫项目在浏览器里面存了1G多数据,没有什么影响),所以着手准备 3.0 的版本。

FAQs

Package last updated on 15 Jun 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc