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

目的是打算用python控制浏览器。把整个过程记录下来,但愿能给你们节省时间。

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

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

过程python

安装前

得先apt-get update下git

sudo apt-get update

 

安装iceweasel(firefox) 

sudo apt-get install iceweasel


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

iceweasel -version


个人是52.7.3web

 

下载驱动geckodriver

对于52.7.3的iceweasel,江湖传说得配0.15.0版本的geckodriver:下载地址 
这里要注意选择arm的编译版本


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

sudo chmod -R 777 geckodriver

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

安装selenium

Selenium的版本要3.3以上才能够。咱们就用3.3吧,防止出什么幺蛾子浏览器

sudo pip install selenium==3.3

 

准备代码

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

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了。网上成功经验的资料相对也比较少,大多也都是遇到了各类问题。测试



3.若考虑windows下安装,参考此文。临时查到的,放到这里,备忘。连接 特别感谢此文,少走了莫大的弯路:https://blog.csdn.net/DDQ_DQ/article/details/77367739

相关文章
相关标签/搜索