wechat-articles-crawler
wechat-articles-crawler copied to clipboard
爬取完文章列表以后没有爬取文章页,无法获取阅读数和点赞数据
获取文章的列表总数articles.length 1012 在这里程序就停止执行了,再次手动点击公众号里面的文章,也无法正常抓取文章阅读数和点赞数据。
else if (requestDetail.url.indexOf('mp.weixin.qq.com/mp/getappmsgext?') !== -1 && requestDetail.requestOptions.method == 'POST') { // 获取评论数,点赞数
}
这里没有具体的实现
@ihink 您好,我这边再测试了次,是正常的。试着把一次爬取的文章数改小点,比如maxLength改成200。
获取评论数,点赞数,是在微信浏览器端获取的,通过检查浏览器有没有渲染了dom,在微信浏览器端收集了需要的数据,发往服务器,具体代码在 articleInjectJs.js。
我录了一个视频, http://v.youku.com/v_show/id_XMzUwMzE4OTM1Mg==.html?spm=a2hzp.8244740.0.0 ,可以详细看看过程。
@wuyanwuyan 您好,我也遇到了一样的问题,就是获取总数之后程序就停止执行了,且改小了maxLength之后也没有解决……
您好,继续前面几位的提问。我下载了您的代码,运行也是不能获取评论数之类的。自己改maxLength=100,模拟器在获取文章数超过100后还在往下刷新,Terminal端列表总数不变了,但是一直有输出,没有出现过像视频中给出的显示抓取各类信息的效果。源码如@ihink所说,获取评论数,点赞数里好像没有实现,能否看看是不是有这个问题,十分感谢!
您好,我遇到了同样的问题,如楼上所说,那个地方确实没有具体的实现
@ihink 您好,请问您解决了吗
@csj007 在articleInjectJS.js里有获取文章阅读数的代码,根据流程在fetchListEnd_StartArticle函数中已经emit了一个url消息,这个就包含文章的链接,但是我不知道为什么获取文章列表这个不停止,是要改变return 的newResponse中的值? node.js我不会,不知道您会不会,可以研究研究,然后交流一下~
@Brayden-Lee 对的,感觉获取文章列表停止不了,即使达到设置的maxLength也还是会往下刷新,所以根本进不去获取文章阅读数那块。node.js我也不会,正在研究。。。可是视频中作者的确成功运行了
自动往下刷新是因为注入了定时器脚本,但是wechatIo.emit('url', data)后 ,确实没有拿到对应是socket事件,导致评论数获取不到