«не удается подключиться к chrome в 127.0.0.1:37541» при использовании незамеченного-chromedriver с Python

#python #selenium #web-scraping #selenium-chromedriver #undetected-chromedriver

Вопрос:

После использования Selenium я решил попробовать undetected-chromedriver , поэтому установил его с помощью

  pip install undetected-chromedriver
 

Однако, запустив этот простой скрипт

 import undetected_chromedriver.v2 as uc

options = uc.ChromeOptions()
options.add_argument('--no-sandbox')

driver = uc.Chrome(options=options)
with driver:
    driver.get('https://google.com') 
 

выдает ошибку

селен.общие.исключения.Исключение WebDriverException: Сообщение: неизвестная ошибка: не удается подключиться к chrome в 127.0.0.1:37541 из chrome недоступен

Нет никаких проблем с использованием обычного селена

 from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument("--no-sandbox"); # Bypass OS security model

driver = webdriver.Chrome(options=options)
with driver:
    driver.get('https://google.com') 
 

Вот обратная связь

 Traceback (most recent call last):
  File "/root/test-bot/src/test.py", line 6, in <module>
    driver = uc.Chrome()
  File "/root/anaconda3/envs/test/lib/python3.9/site-packages/undetected_chromedriver/v2.py", line 302, in __init__
    super(Chrome, self).__init__(
  File "/root/anaconda3/envs/test/lib/python3.9/site-packages/selenium/webdriver/chrome/webdriver.py", line 69, in __init__
    super(WebDriver, self).__init__(DesiredCapabilities.CHROME['browserName'], "goog",
  File "/root/anaconda3/envs/test/lib/python3.9/site-packages/selenium/webdriver/chromium/webdriver.py", line 93, in __init__
    RemoteWebDriver.__init__(
  File "/root/anaconda3/envs/test/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 248, in __init__
    self.start_session(capabilities, browser_profile)
  File "/root/anaconda3/envs/test/lib/python3.9/site-packages/undetected_chromedriver/v2.py", line 577, in start_session
    super(Chrome, self).start_session(capabilities, browser_profile)
  File "/root/anaconda3/envs/test/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 339, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "/root/anaconda3/envs/test/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 400, in execute
    self.error_handler.check_response(response)
  File "/root/anaconda3/envs/test/lib/python3.9/site-packages/selenium/webdriver/remote/errorhandler.py", line 236, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: cannot connect to chrome at 127.0.0.1:52681
from chrome not reachable
  (Driver info: chromedriver=2.41.578700 (2f1ed5f9343c13f73144538f15c00b370eda6706),platform=Linux 5.11.0-18-generic x86_64)
 

Есть какие-нибудь предложения?


Попытка № 1

Also tried setting the executable_path to /usr/bin/chromedriver

 import undetected_chromedriver.v2 as uc

options = uc.ChromeOptions()
options.add_argument('--no-first-run --no-service-autorun --password-store=basic')

CHROME_DRIVER_PATH = '/usr/bin/chromedriver'
driver = uc.Chrome(executable_path=CHROME_DRIVER_PATH, options=options)
with driver:
    driver.get('https://google.com') 
 

which gives the same error

selenium.common.exceptions.WebDriverException: Message: unknown error: cannot connect to chrome at 127.0.0.1:42305
from chrome not reachable

Checked that the path does exists

 # ll /usr/bin/chromedriver
-rwxr-xr-x 1 root root 8298464 Oct  1 14:19 /usr/bin/chromedriver*
 

Попытка № 2

Попробовал использовать Xvfb и отключить безголовый режим

 import undetected_chromedriver.v2 as uc
from xvfbwrapper import Xvfb
vdisplay = Xvfb(width=800, height=1280)
vdisplay.start()

options = uc.ChromeOptions()
options.add_argument('--no-first-run --no-service-autorun --password-store=basic')
options.user_data_dir = f'./tmp/test_undetected_chromedriver'
options.add_argument(f'--disable-gpu')
options.add_argument(f'--no-sandbox')
options.add_argument(f'--disable-dev-shm-usage')

CHROME_DRIVER_PATH = '/usr/bin/chromedriver'
driver = uc.Chrome(executable_path=CHROME_DRIVER_PATH, options=options, headless=False)
with driver:
    driver.get('https://google.com') 
    print(driver.title)
 

немного другая ошибка

селен.общие.исключения.Исключение WebDriverException: Сообщение: неизвестная ошибка: не удается подключиться к chrome в 127.0.0.1:42467 из-за неизвестной ошибки: не удается обнаружить открытые страницы (Информация о драйвере: chromedriver=2.41.578700 (2f1ed5f9343c13f73144538f15c00b370eda6706),платформа=Linux 5.11.0-18-generic x86_64)

Комментарии:

1. Попробуйте настроить ведение журнала для вашего водителя и найдите там подсказку.

Ответ №1:

удалите все, что есть в профиле path.it работает на меня