Есть ли способ открыть браузер Firefox, а затем подключиться к нему с помощью селена? Я знаю, что это возможно на Chrome, запустив его в командной строке и используя-remote-debugging-port Аргумент, как это:
import subprocess
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
subprocess.Popen('"C:/Program Files (x86)/Google/Chrome/Application/chrome.exe" --remote-debugging-port=9222', shell=True)
options = Options()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
driver = webdriver.Chrome(executable_path=PATH, options=options)
< /code>
Можно ли это сделать в Firefox? Я некоторое время искал и проверял вопросы, касающиеся этого, но не повезло.
единственное, что я обнаружил, это то, что у Geccodriver есть существующий аргумент-Connect < /code>, но я не уверен, как его использовать. Как вы передаете аргументы в GeckOdriver и используете его в селене? < /P>
Любая помощь будет оценена. Если это не может быть сделано, дайте мне знать. Спасибо < /p>
edit: < /strong>
Хорошо, я добился некоторого прогресса, я знаю, как передать геккодривер Args Selenium: < /p>
driver = webdriver.Firefox(service=Service(PATH, service_args=['--marionette-port', '9394', '--connect-existing']))
< /code>
Проблема сейчас в том, что я начинаю Firefox с сервера отладчика, как это:
firefox.exe -marionette -start-debugger-server
< /code>
Когда я запускаю код, он либо поднимает это сообщение об ошибке: < /p>
Traceback (most recent call last):
File "c:\Users\maxis\Desktop\Python\Freelance\Application for Opening Web Browsers\browsers\firefox.py", line 107, in
driver = webdriver.Firefox(service=Service(PATH, service_args=['--marionette-port', '9394', '--connect-existing']))
File "C:\Users\maxis\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 180, in __init__
RemoteWebDriver.__init__(
File "C:\Users\maxis\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 275, in __init__
self.start_session(capabilities, browser_profile)
File "C:\Users\maxis\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 365, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "C:\Users\maxis\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 430, in execute
self.error_handler.check_response(response)
File "C:\Users\maxis\AppData\Local\Programs\Python\Python39\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: No connection could be made because the target machine actively refused it. (os error
10061)
< /code>
Или я получаю несколько всплывающих окон, которые говорят мне, что в Firefox есть входящий запрос. Даже когда я нажимаю хорошо, кажется, ничего не произойдет.
Подробнее здесь: https://stackoverflow.com/questions/723 ... ium-python
Как подключиться к существующему экземпляру Firefox с помощью селена (Python) ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Невозможно подключиться к экземпляру Oracle Linux с помощью шпатлевки [закрыто]
Anonymous » » в форуме Linux - 0 Ответы
- 70 Просмотры
-
Последнее сообщение Anonymous
-