树莓派raspberry 3B 安装selenium和iceweasel(firefox)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

目的是打算用python控制浏览器。把整个过程记录下来,希望能给大家节省时间。

最折腾人的,就是各种软件的版本了吧。
先上个软件版本:
树莓派3B
iceweasel 52+selenium 3.3 +geckodriver 15.0
python2.7

firefox在树莓派中,名称为iceweasel。iceweasel,selenium,geckodriver均有版本对应关系,其中一个搞错,很可能就报错。

过程

安装前

得先apt-get update下

sudo apt-get update

 

安装iceweasel(firefox) 

sudo apt-get install iceweasel


查看iceweasel的版本,确保是52的

iceweasel -version

204843_WZgO_2396236.png
我的是52.7.3

 

下载驱动geckodriver

对于52.7.3的iceweasel,江湖传说得配0.15.0版本的geckodriver:下载地址 
这里要注意选择arm的编译版本
树莓派raspberry 3B 安装selenium和iceweasel(firefox)_第1张图片

 下载下来后,对其进行解压缩,得到geckodriver文件,将此文件的权限,设置为777

sudo chmod -R 777 geckodriver

将geckodeiver文件,移动到环境变量/usr/local/bin目录下
 

安装selenium

Selenium的版本要3.3以上才可以。我们就用3.3吧,防止出什么幺蛾子

sudo pip install selenium==3.3

 

准备代码

这样安装就完成了,下面我们来准备python测试的代码:

from selenium import webdriver

browser = webdriver.FireFox()

browser.get('http://www.baidu.com')
browser.get('http://www.qq.com')

功能是先访问百度,然后再访问qq的网站。python运行后,能顺利打开firefox,并且完成这个过程,说明环境安装成功。
 

 

后记

对两点进行下记录
1.很多网上的博文,对geckodriver文件放在哪里没有做说明,我自己尝试了,假如随便放在某个目录下。例如~目录。那么在python代码的browser = webdriver.FireFox()中,就要传入geckodriver的路径作为参数。但是我发现,在webdriver.FireFox()中指定了geckodriver完整路径,会报一个很奇怪的错误。说指定的路径不是目录...我查了很多教程,都是说此处指定的是文件的路径名,而不是文件夹的名字。所以有点匪夷所思。还望知道的朋友指教。

2.关于chromium浏览器
本来我是打算使用selennium来控制chromium的,毕竟树莓派3B自带的chreomium。性能感觉也要好点。但是尝试到最后,报一个状态码为127的错误,网上搜了下,可能还是驱动版本的问题。网上有一篇博客讲的比较详细:链接  文章中,特别注意自己树莓派上的chromium的version。按文章的提示,我的树莓派上的版本,就没找到对应的驱动。chromium和chrome用的同一套驱动,其他文章还提到chrome和driver之间版本对应关系:链接。但是,随着版本的维护,比较新的版本,已经不支持arm的Linux了。网上成功经验的资料相对也比较少,大多也都是遇到了各种问题。

树莓派raspberry 3B 安装selenium和iceweasel(firefox)_第2张图片

3.若考虑windows下安装,参考此文。临时查到的,放到这里,备忘。链接

特别感谢此文,少走了莫大的弯路:https://blog.csdn.net/DDQ_DQ/article/details/77367739


  •  

转载于:https://my.oschina.net/u/2396236/blog/1790075

你可能感兴趣的:(树莓派raspberry 3B 安装selenium和iceweasel(firefox))