×

python实现B站评论分页爬取

admin admin 发表于2025-09-29 14:56:35 浏览37 评论0

抢沙发发表评论

一、接口概述

B站评论数据主要通过接口获取,需传递视频oid(即aid或转换后的BV号)、页码(pn)等参数。接口返回JSON格式数据,包含主评论及回复内容。弹幕数据则通过接口获取,返回XML格式。

二、关键参数说明

1.oid:视频唯一标识,可通过BV号转换或直接从API获取。

2.type=1:固定参数,表示评论类型为视频评论。

3.pn/ps:页码和每页数量,默认每页20条评论。

4.mode=3:最新接口版本标识。

5.前往体验API:c0b.cc/R4rbK2 。

三、Python请求示例

以下代码展示如何通过Python爬取B站评论数据,包含代理设置和分页处理:

python

# coding:utf-8

""" Compatible for python2.x and python3.x requirement: pip install requests """

from __future__ import print_function import requests

# 配置参数 API_URL = "c0b.cc/R4rbK2 wechatid:Taobaoapi2014 "

app_key = "YOUR_APP_KEY" q = "视频ID" # 视频ID

# 请求示例 url 默认请求参数已经做URL编码 url = "bili/item_review/?key=<您自己的apiKey>&item_id=921601411"

headers = { "Accept-Encoding": "gzip", "Connection": "close" } if __name__ == "__main__": r = requests.get(url, headers=headers) json_obj = r.json() print(json_obj)

四、注意事项

1.反爬机制:需设置随机User-Agent和请求间隔,建议使用代理IP。

2.认证:部分接口需要Credential参数(如sessdata)。

3.数据存储:可将结果保存至CSV或数据库。

完整项目需补充BV转oid的逻辑,实际开发建议使用官方bilibili-api库简化流程。弹幕采集可参考get_danmakus()方法。


群贤毕至

访客