Python Selenium Geckodriver连接被拒绝

2024-05-12 20:35:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我花了好几个小时试图让Selenium和Python一起工作,真倒霉 此错误消息 selenium.common.exceptions.WebDriverException: Message: connection refused 这就是我的例子使用:在

from pyvirtualdisplay import Display
from selenium import webdriver
display = Display(visible=0, size=(800, 600))
display.start()
browser = webdriver.Firefox()
browser.get('http://www.python.org')
browser.close()

这是我的依赖 apt-get install -y xorg xvfb dbus-x11 xfonts-100dpi xfonts-75dpi xfonts-cyrillic

这是/root/geckodriver.log输出

1493938773101 geckodriver INFO Listening on 127.0.0.1:40876 1493938774156 geckodriver::marionette INFO Starting browser /usr/lib/firefox/firefox.sh with args ["-marionette"] (firefox:3128): GLib-GObject-CRITICAL **: g_object_ref: assertion 'object->ref_count > 0' failed

我正在使用128mbram在Ubuntu 14.04 64-bitVPS远程服务器上运行Selenium 我不知道是什么原因使Selenium无法与Chrome和Firefox浏览器驱动程序通信。在


Tags: fromimportbrowserinfogetseleniumdisplayfirefox
2条回答

请先检查您的“firefox”浏览器版本。在

我发现在某一点上它非常令人困惑。我使用的是Raspbian,apt-get下载的“Iceweasel”是一个firefox52版本,它不适用于geckodriver 0.19(这个版本需要firefox55或更高版本)。在

对我来说,下载geckorviderv0.16就解决了这个问题。在

而且,您可能不需要xorg来运行它,我只需要xvb和iceweasel包。在

好吧,我放弃了Geckodriver,我用PhantomJS作为我的网络驱动程序。在

 from selenium import webdriver  
 display = Display(visible=0, size=(800, 600))
 display.start() 
 driver = webdriver.PhantomJS()
 driver.get('http://www.python.org')
 html_source = driver.page_source
 print ("html_source:",html_source) 
 driver.quit()

以下是我用于安装PhantomJS的步骤:

^{pr2}$

另请参见How to install PhantomJS on Ubuntu。在

相关问题 更多 >