自答一波:经过了三天的摸索,终于找到了一些眉目,把这几天看来的各家情况和最后尝试出来的方法都放在这里,一方面作为这个问题的一个小结,一方面万一有后来的python小白,如我一样,也算是有个帮助吧。
1. 问题归纳
搜索答案的过程中发现,关于爬虫中网页翻页的问题还是挺多的,各家由于网站数据规范性不一,遇到的问题也略有出入,主要有两大类,还有我遇到的这第三类:
一是,网页静态加载,现象是每次翻页都提供一个新的url地址,在地址中进行NoPage的变化(NoPage仅是一个范例,具体网站的翻页参数需要根据对象网站进行分析),网上提到的此类型网站多使用request.get方法,利用url拼接实现翻页。
二是,网页动态加载,现象是每次翻页url地址不发生变化,作为新手,完全懵bi,不知道背后发生了什么。此类网站就多数使用了jQuery+Ajaxr的动态加载方式,可以使用request.post发送post请求进行翻页,翻页请求的数据往往在formdata中体现。由于本人没有相关理论基础,不知道背后实现的原理,仅把我实现过程中的发现在后面介绍。
还有第三种就是我遇到的这个恶心的网站,首先每次翻页URL地址不发生变化,通过开发工具查看后发现确实使用的是request.post和ajax的动态加载方式,应该是适用上面第二种情况的,用request.post发送formdata就能够实现,但是手动翻了几页后发现,formdata里面的所有参数保持不变,而变化的参数是在Query String Parameter里,就又应该