上一篇文章里面我们使用 Python Scrapy 爬取静态网页中所有文字:https://blog.csdn.net/sinat_40431164/article/details/81102476
但是有个问题,当我们把要访问的URL修改为:http://club.haval.com.cn/forum.php?mod=toutiao&mobile=2的时候,可以发现爬取的内容里面没有“车型论坛”和“主题论坛”两个板块。
有时候,我们天真无邪的使用urllib库或Scrapy下载HTML网页时会发现,我们要提取的网页元素并不在我们下载到的HTML之中,尽管它们在浏览器里看起来唾手可得。
这说明我们想要的元素是在我们的某些操作下通过js事件动态生成的。举个例子,我们在刷QQ空间或者微博评论的时候,一直往下刷,网页越来越长,内容越来越多,就是这个让人又爱又恨的动态加载。爬取动态页面目前来说有两种方法:
- 分析页面请求
- selenium模拟浏览器行为
下面我们就来讲一讲如何运用Selenium模拟浏览器行为。
Creating a project
Before you start scraping, you will have to set up a new Scrapy project. Enter a directory where you’d like to store your code and run: