系列之二——爬取动态加载网页的图片
在上一篇中我们提到了如何爬取静态网页,静态网页方便爬取是因为我们查看网页元素然后直接爬取信息就可以。
然而动态网页比如常见的js动态生成,用静态方法访问网站并且获取html时,js动态生成的这一部分还没有生成,所以静态方法获取不了这一部分信息。
我采用的例子是动漫之家(仅学习用,若涉及侵权请联系我,我会下架本文章)
我使用的是selenium的webdriver,我个人理解webdriver是模拟用户用浏览器访问网络,只不过不是用户亲自用鼠标是双击,而是用的代码。在这里本人使用的是Firefox浏览器。
webdriver的使用方法非常简单
dr = webdriver.Firefox()
dr.get(url)
这样我们运行代码的话就会自动弹出一个火狐浏览器,并且该浏览器正在访问我们输入的url
但是我们总不想当我们完成这个程序时,每次用户使用都会弹出浏览器,能不能让它自己静静的运行,不弹出来呢
答案是可以的,我们可以使用无头浏览器,只需要简单的设置option就可以做到
#无头浏览器 这样浏览器就不会弹出
options = Options()
options.add_argument('--headless')
dr = webdriver.Firefox(options=options)
接下来的步骤与静态网页类似,只不过我们用的是dr变量的fin