我正在尝试安装一个在我的Raspberry Pi 3上进行网页抓取的小程序。
使用Ubuntu 16.04,我的笔记本电脑上的程序运行正常。我知道它在我的Raspberry Pi 3上不起作用的原因与Geckodriver和Firefox-ESR之间的兼容性问题有关。我正在使用最新版本。
是否有Geckodriver和Firefox的存储库版本组合可以使用?
是否有另一种浏览器和网络驱动程序组合可以在Raspberry Pi 3上使用selenium进行网页抓取?
非常感谢您的反馈!
环境
输入
import os
import sys
import time
import selenium
# The BeautifulSoup module
from bs4 import BeautifulSoup
# The selenium module
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
# Using Firefox normally (browser pops up)
driver = webdriver.Firefox()
此时Firefox窗口打开并保持空白。一段时间后,python在控制台
中给出了下面的输出输出:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/webdriver.py", line 162, in __init__
keep_alive=True)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 154, in __init__
self.start_session(desired_capabilities, browser_profile)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 243, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 312, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: connection refused
答案 0 :(得分:0)
按照上面的问题,我开始安装以前的geckodriver版本,希望找到一个与Firefox ESR 52.6.0(32位)兼容的版本。
令我惊讶的是, geckodriver 0.16.1 适用于 Firefox ESR 52.6.0(32位) !!!
我花了很多时间试图解决这个问题...我希望它可以帮助处于同样情况的人!
:)
我现在唯一的问题是Firefox无法工作。我想知道这是否与我使用旧版geckodriver这一事实有关......但是,这是另一个问题!
答案 1 :(得分:-1)
raspberry pi 3目前仅支持硒2.53.5