美文网首页
selenium调用chrome, elenium.common

selenium调用chrome, elenium.common

作者: 生命不止运动不息 | 来源:发表于2024-01-26 12:25 被阅读0次

python使用selenium调用谷歌浏览器代码如下

import undetected_chromedriver as uc
from selenium.webdriver.chrome.options import Options

def openHtmlUrl(ttUploadVideoUrl) :
    chrome_options = Options()

    # 将默认的profile路径中的内容,拷贝到以下目录中,并将该路径指派给chromedriver
    profile = '/Users/mine/Desktop/Files/Codes/Gitee/Python/automedia/profile/Default'
    chrome_options.add_argument(f"--user-data-dir={profile}")

    # 手动下载好chromedriver,然后手动指定driver_executable_path,免得自动去下载,会被和谐
    driverpath = '/Users/mine/Desktop/Files/Codes/Gitee/Python/automedia/profile/chromedrive/chromedriver'
    driver = uc.Chrome(options=chrome_options ,driver_executable_path=driverpath)

    driver.get(ttUploadVideoUrl)

    return driver

遇到错误如下:

raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: cannot connect to chrome at 127.0.0.1:50450

    driver = uc.Chrome(options=chrome_options ,driver_executable_path=driverpath)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/undetected_chromedriver/__init__.py", line 466, in __init__
    super(Chrome, self).__init__(
  File "/usr/local/lib/python3.11/site-packages/selenium/webdriver/chrome/webdriver.py", line 45, in __init__
    super().__init__(
  File "/usr/local/lib/python3.11/site-packages/selenium/webdriver/chromium/webdriver.py", line 61, in __init__
    super().__init__(command_executor=executor, options=options)
  File "/usr/local/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 209, in __init__
    self.start_session(capabilities)
  File "/usr/local/lib/python3.11/site-packages/undetected_chromedriver/__init__.py", line 724, in start_session
    super(selenium.webdriver.chrome.webdriver.WebDriver, self).start_session(
  File "/usr/local/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 293, in start_session
    response = self.execute(Command.NEW_SESSION, caps)["value"]
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 348, in execute
    self.error_handler.check_response(response)
  File "/usr/local/lib/python3.11/site-packages/selenium/webdriver/remote/errorhandler.py", line 229, 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:50450
from chrome not reachable
Stacktrace:
0   chromedriver                        0x000000010b38dcc8 chromedriver + 4844744
1   chromedriver                        0x000000010b385243 chromedriver + 4809283
2   chromedriver                        0x000000010af5358b chromedriver + 411019
3   chromedriver                        0x000000010af3cf2a chromedriver + 319274
4   chromedriver                        0x000000010af90c86 chromedriver + 662662
5   chromedriver                        0x000000010af878c6 chromedriver + 624838
6   chromedriver                        0x000000010afd9833 chromedriver + 960563
7   chromedriver                        0x000000010afcda63 chromedriver + 911971
8   chromedriver                        0x000000010af951b3 chromedriver + 680371
9   chromedriver                        0x000000010af967ce chromedriver + 686030
10  chromedriver                        0x000000010b34d642 chromedriver + 4580930
11  chromedriver                        0x000000010b3529cc chromedriver + 4602316
12  chromedriver                        0x000000010b332e11 chromedriver + 4472337
13  chromedriver                        0x000000010b353746 chromedriver + 4605766
14  chromedriver                        0x000000010b32439c chromedriver + 4412316
15  chromedriver                        0x000000010b373868 chromedriver + 4737128
16  chromedriver                        0x000000010b373a1e chromedriver + 4737566
17  chromedriver                        0x000000010b384e83 chromedriver + 4808323
18  libsystem_pthread.dylib             0x00007ff8148b21d3 _pthread_start + 125
19  libsystem_pthread.dylib             0x00007ff8148adbd3 thread_start + 15

问题原因以及解决方法

原因就是因为 指定的用户目录的总大小数据过大,达到了几G
解决办法:清空目录数据,或重指一个用户数据目录

原因与方案

感谢以下文章:
https://stackoom.com/zh/question/4rBt9

解决方案

相关文章

网友评论

      本文标题:selenium调用chrome, elenium.common

      本文链接:https://www.haomeiwen.com/subject/akrbodtx.html