Selenium Chromedriver 挂起?
Selenium Chromedriver Hangs?
我有一个很长的 运行ning python 应用程序,它会定期(每 30-60 秒)打开一个带有 selenium 和 chrome 驱动程序的网页,运行 一些javascript 并截图。它在 EC2 ubuntu 实例上 运行ning 与 Xvfb 中的 chrome 并且大多数情况下一切正常,除了程序会间歇性挂起。它发生在以下线路之一:
options = Options()
options.add_argument("--disable-web-security")
options.add_argument("--webdriver-logfile=webdrive.log")
dc = DesiredCapabilities.CHROME
dc['loggingPrefs'] = {'browser': 'ALL'}
driver = webdriver.Chrome(chrome_options=options, desired_capabilities=dc)
driver.get(url);
(我没有确切的行,但我从调试语句中知道它介于这两者之间)
不幸的是,程序没有崩溃,所以它没有任何错误消息,它只是从昨晚 7 点开始无休止地等待。 运行 strace -p 'python program pid'
returns: wait4(-1,
and 运行ning strace -p 'chromedriver pid'
returns recvfrom(20,
我可以在 ps axjf
中看到进程仍在 运行ning,它只是没有做任何事情。我现在有点不知所措,有什么建议吗?
chrome驱动版本:2.10.267518
Google Chrome 40.0.2214.111
Selenium(用 pip 安装):2.42.1
#https://github.com/cgoldberg/xvfbwrapper
xvfb = Xvfb(width=1920, height=1920)
xvfb.start()
---- 编辑 ----
我刚刚更新到 ChromeDriver 2.14.313457
和 Selenium 2.44.0
,希望这会解决问题。我现在要保持开放状态。感谢到目前为止的建议!
---- 编辑 ----
所以服务还是挂了。我想知道这是否是因为我关闭并重新启动每个屏幕截图 google-chrome?这是否可能以某种方式导致内存泄漏?我该如何诊断?
我有一个很长的 运行ning python 应用程序,它会定期(每 30-60 秒)打开一个带有 selenium 和 chrome 驱动程序的网页,运行 一些javascript 并截图。它在 EC2 ubuntu 实例上 运行ning 与 Xvfb 中的 chrome 并且大多数情况下一切正常,除了程序会间歇性挂起。它发生在以下线路之一:
options = Options()
options.add_argument("--disable-web-security")
options.add_argument("--webdriver-logfile=webdrive.log")
dc = DesiredCapabilities.CHROME
dc['loggingPrefs'] = {'browser': 'ALL'}
driver = webdriver.Chrome(chrome_options=options, desired_capabilities=dc)
driver.get(url);
(我没有确切的行,但我从调试语句中知道它介于这两者之间)
不幸的是,程序没有崩溃,所以它没有任何错误消息,它只是从昨晚 7 点开始无休止地等待。 运行 strace -p 'python program pid'
returns: wait4(-1,
and 运行ning strace -p 'chromedriver pid'
returns recvfrom(20,
我可以在 ps axjf
中看到进程仍在 运行ning,它只是没有做任何事情。我现在有点不知所措,有什么建议吗?
chrome驱动版本:2.10.267518
Google Chrome 40.0.2214.111
Selenium(用 pip 安装):2.42.1
#https://github.com/cgoldberg/xvfbwrapper
xvfb = Xvfb(width=1920, height=1920)
xvfb.start()
---- 编辑 ----
我刚刚更新到 ChromeDriver 2.14.313457
和 Selenium 2.44.0
,希望这会解决问题。我现在要保持开放状态。感谢到目前为止的建议!
---- 编辑 ----
所以服务还是挂了。我想知道这是否是因为我关闭并重新启动每个屏幕截图 google-chrome?这是否可能以某种方式导致内存泄漏?我该如何诊断?