我正在尝试使用PuTTY通过SSH启动包含selenium webdriver使用情况的python脚本。在SSH终端上运行命令“ sudo python3.4 [filepath] .py”时,会引发“连接被拒绝”错误,但是在服务器终端上运行相同的命令时,它将正常运行。
该服务器是运行Raspbian的Raspberry pi,并且正在使用geckodriver作为webdriver。使用SSH连接的计算机正在运行Windows10。
在运行python脚本之前,我尝试输入“ export DISPLAY =:0”。我还尝试通过gnome-terminal运行命令,希望它会迫使pi加载gui,因为我认为硒驱动程序是图形驱动程序可能是问题的一部分。
我对SSH:ing非常陌生,对硒还是很陌生。
为了使其比我的实际程序更简单,这只是启动selenium的脚本,仍然显示相同的问题。
from selenium import webdriver
driver = webdriver.Firefox(executable_path=r'/home/pi/Downloads/gecko3/geckodriver')
driver.get('www.google.com')
driver.quit()
输出(进入我的SSH客户端)如下:
Traceback (most recent call last):
File "/home/pi/Desktop/webtest.py", line 3, in <module>
driver = webdriver.Firefox(executable_path=r'/home/pi/Downloads/gecko3/geckodriver')
File "/usr/local/lib/python3.4/dist-packages/selenium/webdriver/firefox/webdriver.py", line 174, in __init__
keep_alive=True)
File "/usr/local/lib/python3.4/dist-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "/usr/local/lib/python3.4/dist-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/usr/local/lib/python3.4/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.4/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)
昨天我遇到了完全相同的问题,它与安全性有关。监控gecodriver / firefox / python的运行时进程,并确保运行时用户符合您的期望。就我而言,它以IUSR(IIS)的形式运行,当我将其更改为NETWORK_SERVICES时,它运行良好。 这是因为它试图在Windows目录中创建临时配置文件。您可能有类似的问题。
您可能还需要创建私人配置文件并在您的代码中使用它
ffprofile = webdriver.FirefoxProfile(r“ C:.. \ p1s7i6ei.webScraper”) WD = webdriver.Firefox(capabilities = ffCap,options = WDOptions,service_log_path = os.devnull,firefox_profile = ffprofile)
https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles