现阶段网络爬虫的工具主要是有scrapy、selenium(第二版)等。总的来说各有好处,scrapy最大 的好处是爬取的速度快而selenium的好处是能爬去的网站种类多。详细点的解释是:scrapy在爬取网页时不 用点击开页面(selenium似乎需要页面全部加载完才可以查找定位),selenium可以爬取动态网页和静态网页 (模拟浏器操作)而scrapy可以很顺利的爬取静态网页(但是很难或者不能爬取动态网页)。由于爬取知网 的需要,本人学习了selenium,现分享一下个人的心得(如有错的地方,请指正)。 1. selenium的安装一般很简单(只需要简单操作),但是对于不适合47.0.1版的Firefox浏览器的电脑,需需要 选择其他版本(一般是选比47.0.1低的,本人的是18版的)。 2. 善用wait(或者implicitly_wait()),因为网站加载需要时间,没有等待的话可能出现程序时好时坏的情况( 因为可能在加载不过来的情况下就进行下一步的查找)。 3.selenium可以二次查找(scrapy也可以),长时间的爬取会遇到各种形形色色的网页(如果量很大很多的话, 可能会有20-30天,要有心理准备),如果此时使用二次定位可以很好的避免网页源代码变动带来的影响。 4. 几十天(数据量很大的话)的爬取会遇到各种网页问题,你的代码很难覆盖所有的问题(特别是对初学 者而言),所以要原谅自己代码的“不完美”! 5. 推荐几个学习selenium的网页:一. 二.(如对上述网页侵权了,请及时告知本人)
本文出自 “学渣逆袭记” 博客,请务必保留此出处http://12012000.blog.51cto.com/12002000/1862799
原文:http://12012000.blog.51cto.com/12002000/1862799