使用query list时since date似乎无效
最近开始尝试在user id list里面加入第四个参数query list,docker运行,用sqlite的数据库,设置了每天跑一次,试了几天
虽然每次完成后都有自动写入最后运行时间,但是下次运行时依旧每个搜索关键词跑一遍,而且第一次运行之后,接下来每一次运行总会下载一小部分(远)早于最后运行日期的微博的图片和视频,也不确定是覆盖掉了前面运行时候的下载,是搜索结果发生了变化,还是什么问题。
相比之下,在不加人query list的时候,每个微博ID在两次运行之间,如果没有新的微博,可以马上就判断完成,等待爬取下一个ID。
您是说在txt文件加入query参数吗,这个参数只能在config里加,user_id_list.txt不能添加这个参数。
您是说在txt文件加入query参数吗
对
这个参数只能在config里加,user_id_list.txt不能添加这个参数
但是readme里面有提到,除了在config里面定义,为所有weibo ID使用同一套关键字外,定期自动爬取微博方法二也是可以的。 user_id_list.txt可以每行4个参数,分别是ID,名字,日期,以及query关键字。
给出的例子是: 1227368500 杨紫 3 梦想,希望
我尝试用docker运行,也能按要求搜索到相应微博,比如,txt其中一行是: 7344701414 张婧仪的小情书 2025-05-16T16:16:03 视频,饭拍
能够在docker logs看到相对应的每个关键执行一次爬取的搜索结果
成功获取到页面 33 的数据。 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪 海的女儿# 【视频】饭剪一则@张婧仪 微博之夜|250111 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪 海的女儿# 【视频】工作室更新拍摄花絮一则@张婧仪 微博之夜|250111 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪 海的女儿# 【饭拍】视频一则@张婧仪 微博之夜|250111 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪 海的女儿# 【视频】饭剪一则@张婧仪 微博之夜|250111 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪焕羽# 【饭拍】250110 北京到达 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪焕羽# 【饭拍】250110 杭州出发 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】视频两则+2p @张婧仪 梦花廷|缇兰/紫簪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪焕羽# 【饭拍】250110 杭州出发 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】下班视频一则 @张婧仪 梦花廷|缇兰/紫簪 URL: https://m.weibo.cn/detail/5121013911915288 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】下班视频一则 @张婧仪 梦花廷|缇兰/紫簪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】视频一则 @张婧仪 梦花廷|缇兰/紫簪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】视频一则 @张婧仪 梦花廷|缇兰/紫簪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】视频一则 @张婧仪 梦花廷|缇兰/紫簪 URL: https://m.weibo.cn/detail/5120874985035337 已获取用户 张婧仪的小情书 的微博,内容为 #太平鸟女装品牌代言人张婧仪#【视频】250109 PEACEBIRD太平鸟女装更新张婧仪相关一则 @张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪焕羽#【饭拍】视频一则 @张婧仪 焕羽|乔青羽 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】下班视频一则 @张婧仪 梦花廷|缇兰/紫簪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】下班视频一则 @张婧仪 梦花廷|缇兰/紫簪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪梦花廷#【饭拍】视频一则 @张婧仪 梦花廷|缇兰/紫簪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪焕羽# 【视频】250103 微博之夜更新张婧仪相关一则 @张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪burberry品牌大使# 【视频】250103 工作室更新杂志拍摄花絮一则 @张婧仪 新视线Wonderland|250103 ------------------------------已获取张婧仪的小情书(7344701414)的第33页微博------------------------------
成功获取到页面 58 的数据。 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪王斤斤#【饭拍】240113 微博之夜 领奖 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪惜花芷#【饭拍】惜花芷 花芷 1p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 红毯 9p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 领奖 2p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 后台 生图视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 领奖 2p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 领奖 2p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 内场 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 领奖 3p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 内场 3p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 入场 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 领奖 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 领奖 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 内场 2p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 内场 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 内场 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 1p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 1p@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 视频一则@张婧仪 已获取用户 张婧仪的小情书 的微博,内容为 #张婧仪出图#【饭拍】240113 微博之夜 媒体生图2p@张婧仪 ------------------------------已获取张婧仪的小情书(7344701414)的第58页微博------------------------------
刚才查看代码,确实是可以在txt配置query的,是我错了。但是现在没办法调试,不确定哪里有问题。
发现似乎问题是在since_date上。
今天update了之后重新生成docker image运行,偶然改变了config.json里面的since_date,原来是写日期,比如2015-01-01, 换成了数字 (比如53,就是上次测试的日子)。
在爬完一次显示抓取完毕后,重启container,看日志又重新爬取到根据query搜索结果中,最多53天以前的微博,而无视user_id_list里面添加的最后爬取日期(今天)
这样看来,since_date配合schedule_interval似乎可以暂时解决
另外,使用append模式的情况,首次运行也是会忽略user_id_list里面的日期,只看config.json里面的since_date,重启docker后再次运行则正常不会重复爬取