【发布时间】:2018-08-18 22:10:06
【问题描述】:
我正在尝试在我的 Raspberry Pi 3 上安装一个执行网络抓取的小程序。
该程序在我装有 Ubuntu 16.04 的笔记本电脑上运行良好。我知道它在我的树莓派 3 上不起作用的原因与 Geckodriver 和 Firefox-ESR 之间的兼容性问题有关。我都使用最新版本。
是否有可以工作的 Geckodriver 和 Firefox 的存储库版本组合?
是否有浏览器和网络驱动程序的替代组合可以在 Raspberry Pi 3 上使用 selenium 进行网络抓取?
非常感谢您的反馈!
环境
- 操作系统:Raspbian GNU/Linux 9 (stretch) 内核:Linux 4.9.59-v7+
- ARMv7 处理器第 4 版 (v7l)
- Python 2.7.13
- 硒 3.10.0
- Firefox ESR 52.6.0(32 位)
- 壁虎驱动 0.19.1
输入
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
【问题讨论】:
标签: selenium firefox web-scraping raspberry-pi geckodriver