golang中使用selenium进行爬虫

Posted 徐长卿学数据分析

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang中使用selenium进行爬虫相关的知识,希望对你有一定的参考价值。

selenium本来是用来做自动测试,但是因为可以模拟浏览器操作,所以也可以用来做爬虫(尤其是一些比较变态登陆网站,又不会模拟登陆的),只是速度会比较慢。

转载请注明出处:http://www.cnblogs.com/SSSR/p/6390229.html

经验总结:

1、火狐浏览器在运行较长时间后,会导致内存泄露,但是Google浏览器不会,所以如果长时间运行还是使用Google浏览器比较好。

2、截图方面选择火狐浏览器,Google浏览器无法截全部页面,即使设置了页面大小也不行。

3、Firefox与selenium之间有版本对应关系。2.53对应于46以下。

golang中的项目目前发现了三个比较好的。

需要文件:chromedriver.exe,selenium-server-standalone-2.53.0.jar,geckodriver.exe

1.https://github.com/tebeka/selenium和https://github.com/bunsenapp/go-selenium,这两个都需要在Java先运行selenium-server-standalone-2.53.0.jar文件(在cmd中:java -jar selenium-server-standalone-2.53.0.jar)。还需要将chromedriver.exe和geckodriver.exe加到PATH中。

2.https://github.com/fedesog/webdriver 这个项目不需要后台运行selenium,但是在使用Firefox时,需要从selenium-server-standalone-2.53.0.jar中提取.xpi文件。chromedriver.exe也是必须的。

但是这个项目的作者已经不再维护了,所以使用的时候可能会遇到问题。如果不需要截图,只是简单的爬虫,建议使用这个项目。

 

以上是关于golang中使用selenium进行爬虫的主要内容,如果未能解决你的问题,请参考以下文章

使用selenium爬虫抓取数据

0基础学爬虫爬虫基础之自动化工具 Selenium 的使用

利用selenium进行爬虫时,防止js检测驱动的方法

python 爬虫 简单爬虫教程(requests + selenium )

使用selenium爬虫豆瓣电影信息

在Scrapy中使用Selenium