Commit Graph
18 Commits
Author SHA1 Message Date
翟持江 2c11e64dc9 Merge branch 'NanmiCoder:main' into main 2025-08-06 11:39:42 +08:00
翟持江 082c316345 Merge branch 'NanmiCoder:main' into main 2025-07-30 21:28:29 +08:00
翟持江 214ccaa294 Update sqlite_tables.sql,同步更新sqlite以支持保存笔记下载地址 2025-07-30 10:48:52 +08:00
翟持江 612a9b53d3 Update tables.sql,同步更新该文件以支持保存笔记下载地址 2025-07-30 10:46:46 +08:00
翟持江 e6db6be1ca Update __init__.py,添加了提取抖音笔记图片的逻辑 2025-07-30 10:45:38 +08:00
翟持江 af5a393a7a Update core.py,删除了其它代码贡献者所添加的try-catch语句,该段try-catch语句将会影响其代码的最终逻辑并令其失效,使其仅能爬取当天一天数据而无法跳转到下一天(原先的逻辑就是try-catch捕获异常从而进入下一天,不要再向该语句中添加捕获异常操作或者finally语句!) 2025-04-19 04:34:24 +08:00
翟持江 b675547aab Update __init__.py,为bilibili的视频信息、up主信息、评论信息添加额外字段 2025-04-19 02:29:22 +08:00
翟持江 ec97001451 Update tables.sql 2025-04-19 02:22:22 +08:00
翟持江 9935a07279 Add files via upload 2025-04-19 02:18:52 +08:00
翟持江 0364b23b5b Update core.py,为爬取类型为detail和creator的任务,添加了和search任务一样的,用于转存up主信息的bilibili_store.update_up_info的函数调用
正如`search`函数中一样,在调用`get_video_info_task`后,`bilibili_video`和`bilibili_up_info`信息都将获得。
原先的`get_specified_videos`在`detail`任务中仅保存了指定`bilibili_video`的信息,而`bilibili_up_info`信息尚未保存,`creator`任务的`get_creator_videos`中也调用了`get_specified_videos`获取指定创作者下所有的视频信息,同理也未保存`bilibili_up_info`信息。
所以只需为`get_specified_videos`添加一句`await bilibili_store.update_up_info(video_detail)`即可和`search`任务下获得的数据文件个数保持一致,不会缺少对应up主的个人信息。
已测试:
- 原先仅`search`任务下产生`*_creator.csv`、`*_contents.csv`、`*_comments.csv`,而`detail`和`creator`任务下缺少`*_creator.csv`文件。
- 此次提交后将使三种模式下的数据文件个数一致。
2025-01-19 19:55:18 +08:00
翟持江 2d93ec5a82 Update core.py,更改了错误的缩进 2025-01-15 18:33:12 +08:00
翟持江 8741952cb5 Update requirements.txt,添加了pandas模块,datetime为Python标准库模块无需添加 2025-01-15 18:27:40 +08:00
翟持江 d2ecd3b11d Update client.py,将search_video_by_keyword中post_data错误的请求参数进行更新
`pubtime_begin`更改为`pubtime_begin_s`,`pubtime_end`更改为`pubtime_end_s`。已测试
2025-01-15 18:21:03 +08:00
翟持江 f2b41b573b Update core.py,以实现按照 START_DAY 至 END_DAY ,每一天进行筛选,这样能够突破 1000 条视频的限制,最大程度爬取该关键词下的所有视频
添加了`get_pubtime_datetime`函数用以获取`pubtime_begin_s`和`pubtime_end_s`参数,并为`search`函数添加了`ALL_DAY`选项,若`ALL_DAY`未开启,则保留原先的搜索策略,但每个关键词最多返回 1000 条数据,若`ALL_DAY`已开启,则使用新策略,按照 START_DAY 至 END_DAY 按照每一天进行筛选,这样能够突破 1000 条视频的限制,最大程度爬取该关键词下的所有视频,新添加的`get_pubtime_datetime`函数仅在`search`中使用,需要用户按安装`datetime`和`pandas`模块。已测试完毕
2025-01-15 18:18:36 +08:00
翟持江 bf87821d4b 为 base_config.py 添加了是否开启按每一天进行爬取的选项
`bilibili 关键词搜索`仅返回 1000 条视频记录,共计 34 页,前 33 页视频记录数为 30,第 34 页视频记录数为 30。若要获取更多视频,需要设置更多筛选中的时间段选项,最高支持细分为 1 天的视频记录
---
此处添加了`START_DAY`与`END_DAY`以及`ALL_DAY`选项,在`ALL_DAY`为False时,使用原先关键词搜索策略,与原先版本保持不变;`ALL_DAY`为True时,从`START_DAY`与`END_DAY`中解析`client.py`中的search_video_by_keyword函数接收的`pubtime_begin_s`和`pubtime_end_s`参数,以实现最高支持细分为 1 天的视频记录,具体更改见之后提交的`client.py`和`core.py`
2025-01-15 18:06:16 +08:00
翟持江 0118621a79 将微博评论爬取函数get_note_all_comments的max_id_type便为可变请求参数
除了原先的max_id参数外,max_id_type参数也附加在上一次api结果的解析中,初始为0,但随着获取的评论越来越多,会更改为1。
此外,修改了WeiboClient类的request函数,将返回的ok_code异常处理进行了优化,细分为0,1,else...。这样即便获取到的max_id和max_id_type为None,也不会触发像'>' not supported between instances of 'NoneType' and 'int'这样模棱两可的异常提示,方便溯源问题所在,即api响应错误。
对于评论的数据获取不全的情况,在浏览器中获取显示的评论数量为1000+,更改此次提交前获取的个数为308条,更改后为319条,使用网页端打开手动刷评论的最后一条和程序获取的最后一条内容一致,可能是微博默认开启的精选评论功能导致无法获取所有的微博...
2025-01-10 19:20:01 +08:00
翟持江 17b40b8bb4 Delete client.py
上传文件位置错误
2025-01-10 19:13:03 +08:00
翟持江 8967d3721c 将微博评论爬取函数get_note_all_comments的max_id_type便为可变请求参数
除了原先的max_id参数外,max_id_type参数也附加在上一次api结果的解析中,初始为0,但随着获取的评论越来越多,会更改为1。
此外,修改了WeiboClient类的request函数,将返回的ok_code异常处理进行了优化,细分为0,1,else...。这样即便获取到的max_id和max_id_type为None,也不会触发像'>' not supported between instances of 'NoneType' and 'int'这样模棱两可的异常提示,方便溯源问题所在,即api响应错误。
对于评论的数据获取不全的情况,在浏览器中获取显示的评论数量为1000+,更改此次提交前获取的个数为308条,更改后为319条,使用网页端打开手动刷评论的最后一条和程序获取的最后一条内容一致,可能是微博默认开启的精选评论功能导致无法获取所有的微博...
2025-01-10 19:08:57 +08:00