操作系统: AWS EC2 Ubuntu 22.04.1 LTS
Python : 3.10.6
火狐: 107.0
Geckodriver : 0.32.0 (2022-11-10)
UFW(Ubuntu防火墙):
其他:最新版本
from selenium import webdriver
from selenium.webdriver.firefox.service import Service as FirefoxService
from selenium.webdriver.firefox.options import Options as FirefoxOption
from webdriver_manager.firefox import GeckoDriverManager
options = FirefoxOption()
options.headless = True
service = FirefoxService(GeckoDriverManager().install())
# <selenium.webdriver.firefox.service.Service object at 0x7f008f2a7c70>
driver = webdriver.Firefox(
service=service,
options=options
)当我运行这段代码时
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/home/ubuntu/.local/share/virtualenvs/tool-lKp4P5xD/lib/python3.10/site-packages/selenium/webdriver/firefox/webdriver.py", line 197, in __init__
super().__init__(command_executor=executor, options=options, keep_alive=True)
File "/home/ubuntu/.local/share/virtualenvs/tool-lKp4P5xD/lib/python3.10/site-packages/selenium/webdriver/remote/webdriver.py", line 290, in __init__
self.start_session(capabilities, browser_profile)
File "/home/ubuntu/.local/share/virtualenvs/tool-lKp4P5xD/lib/python3.10/site-packages/selenium/webdriver/remote/webdriver.py", line 383, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/home/ubuntu/.local/share/virtualenvs/tool-lKp4P5xD/lib/python3.10/site-packages/selenium/webdriver/remote/webdriver.py", line 450, in execute
self.error_handler.check_response(response)
File "/home/ubuntu/.local/share/virtualenvs/tool-lKp4P5xD/lib/python3.10/site-packages/selenium/webdriver/remote/errorhandler.py", line 249, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: Failed to read marionette port我有问题了。
在我看来,我认为这是Geckodriver和Firefox之间的一个沟通问题。
但我不知道怎么解决。
此外,我已经尝试使用“pyvirtualdisplay”或“xvfb”。
但结果是一样的。
(https://azevedorafaela.com/tag/headless-browser-in-ubuntu/)
发布于 2022-11-17 08:19:28
我找到了另一条路。
我读过这篇文章。
https://github.com/SeleniumHQ/selenium/issues/10813
我认为在管理器上安装Firefox是个问题。
它在Ubuntu20.04上工作。
因为Snap不是该版本的默认包管理器。
这可能是另一种在Ubuntu22.04上删除Snap的解决方案
https://stackoverflow.com/questions/74470139
复制相似问题