如何得到不同股吧的所有翻页数据,着实让我找了好久,各种资源我都找了可惜还是没有发现★★★,突然无意之中我找到了解决办法,我直接一个好家伙!
首先打开网页的开发者工具(CtrlShifti)★,在源代码中查找对应字段的标签结构★。
基本问题解决了★★★,我们可以开始编写爬虫了★。这部分不讲代码原理,只解释代码功能。自己也是小白,如果代码存在问题或不清楚的话★★,欢迎大家在下方留言,我一定及时回复。
可以看到★,我这里的时间多了年份,这是由于朋友研究的需要,在基于一次爬取的结果上★,进行二次爬取标题所带的链接网页获得的,有关二次爬取的内容★★★,我们再下一节再和大家分享★★★。
朋友托我写个爬虫,本身是个爬虫小白的我还是接受了此次重任,总共历时五天左右★,过程中遇到过无数bug,好在一路披荆斩棘★,还是大差不差的完成了此次委托!但感觉这次的经历还是有必要和大家分享一下,正好最近也没有写博文了,趁这次机会赶赶进度!
大家可以看data-pager这里,里面的内容是list,300059_452885802,我对比了几个页面后发现其中数字分别代表的是:
那么这时候★★★,我们就可以直接用累积多年的算力(小学除法)算出东方财富吧共有452885/80=5661.0625,向上取整共5662页!如果你也脱口而出好家伙的话★★,请在屏幕下方打出来★★★!
我们需要爬取的是东方财富吧中全部发帖信息的阅读、评论、标题、作者及最后更新时间这五个字段的数据,我一开始想也不是很难★★,解析一下网页匹配一下对应的标签值就可以了★★★,但后面还是出现了各种各样的问题,需要大家注意一下★★。
我的第一个办法是直接解析网页后找到span/span标签下的sumpage属性,其内容即为总页数,本来以为原来这么好获取,结果解析完才发现★,pagernums里的内容是动态的,即span.on是会随页而变化的,故直接requests并不能获取到,但是还是被我发现了玄机!