Firefox WebDriver无法从Flask应用程序启动

问题描述

我正在尝试通过Web应用程序在网页上提交一些请求。因为该网页非常复杂,所以我决定不直接发送HTTP请求,而是使用Selenium。我已经部署了Selenium,firefox和geckodriver。所有这些都在虚拟Ubuntu上运行。

geckodriver位于Web应用的venv的bin文件夹中:

-rwxr-xr-x 1 ralfeus ralfeus 7.0M Jul 28 23:45 bin/geckodriver*

运行它的代码在这里

from selenium import webdriver
from selenium.webdriver.support.ui import webdriverwait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.firefox.options import Options

options = Options()
options.set_headless(headless=True)
browser = webdriver.Firefox(firefox_options=options)

当我直接从shell运行脚本时,一切正常。我可以创建一个webdriver实例,可以打开一个页面

uWsgi应用程序以“ www-data用户身份运行 当我将其作为uWsgi的一部分运行时,出现错误

Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:     browser = webdriver.Firefox(firefox_options=options,service_log_path='./firefox.log')
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:   File "/var/www/order/lib/python3.6/site-packages/selenium/webdriver/firefox/webdriver.py",line 174,in __init__
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:     keep_alive=True)
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:   File "/var/www/order/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py",line 157,in __init__
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:     self.start_session(capabilities,browser_profile)
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:   File "/var/www/order/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py",line 252,in start_session
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:     response = self.execute(Command.NEW_SESSION,parameters)
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:   File "/var/www/order/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py",line 321,in execute
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:     self.error_handler.check_response(response)
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:   File "/var/www/order/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py",line 242,in check_response
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]:     raise exception_class(message,screen,stacktrace)
Oct 07 08:58:28 web-1.contaboserver.net uwsgi[17558]: selenium.common.exceptions.SessionNotCreatedException: Message: Unable to find a matching set of capabilities

由于相同的代码在shell中工作正常,因此我排除了路径和二进制文件的问题。还有什么呢?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)