赞
踩
用于解决python绘图中,中文字体显示问题
F12打开网页开发者模式,然后F5刷新,进入控制台中的网络,查看Fetch/XHR
网页手机端:https://m.weibo.cn/?sudaref=cn.bing.com
对文件的打开方式,添加代码encoding='utf-8'
断点续爬功能依托progress.txt记录实现:程序运行时,如果代码同级文件夹内存在progress.txt文件,它会读取其中进度;如果没有,则自动创建。
如果想要从头开始爬取,只需删除 progress.txt 文件即可。
如果想要修改爬虫任务,跳过某些视频/一级评论/二级评论页,建议直接修改progress.txt文件。
(例如,有一个视频爬取失败,想要跳过它,直接在progress中,把video_count加1即可)
progress含义:
第{video_count}个视频已完成爬取。
第{video_count + 1}个视频中,第{first_comment_index}个一级评论的,二级评论第{sub_page}页已完成爬取。
"write_parent"为1指当前一级评论已写入,为0指当前一级评论尚未写入。
示例如右:{"video_count": 1, "first_comment_index": 15, "sub_page": 114, "write_parent": 1}
注意:“video_count”“first_comment_index”"sub_page"三个值全部是从0开始的,"write_parent"取值为0或1。
将要爬取评论的视频 URL 列表放入名为 video_list.txt 的文件中,每行一个 URL。
参数设定
运行代码:python Bilicomment.py(或pycharm等软件打开运行)。代码使用selenium爬取数据。
根据看到"请登录,登录成功跳转后,按回车键继续…"提示后,请登录 Bilibili。登录成功并跳转后,回到代码,按回车键继续。
等待爬取完成。每个视频的评论数据将保存到以视频 ID 命名的 CSV 文件中, CSV 文件位于代码文件同级目录下。
输出的 CSV 文件将包括以下列:‘一级评论计数’, ‘隶属关系’(一级评论/二级评论), ‘被评论者昵称’(如果是一级评论,则为“up主”), ‘被评论者ID’(如果是一级评论,则为“up主”), ‘昵称’, ‘用户ID’, ‘评论内容’, ‘发布时间’, ‘点赞数’。
输出的 CSV 文件是utf-8编码,若乱码,请检查编码格式(可以先用记事本打开查看)。
如果有视频因为错误被跳过,将会被记录在代码同级文件夹下的video_errorlist.txt中。
import random
time.sleep(random.uniform(1, 5)) # 随机生成1到5秒之间的延时,具体秒数可根据需要修改
github:https://github.com/Ghauster/BilibiliCommentScraper
记得给作者点星星
SUB=_2A2
开头的Mozilla/5.0 (Macintosh。。。
weibo_id
即可,可自行写循环,读取多个视频idmax_retries
,不易太大,容易被Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。