当前位置: 首页 > 知识库问答 >
问题:

Python Selenium--user-data-dir选项错误:无法删除旧的devtools端口文件

龙俊良
2023-03-14

我尝试用--user-data-dir选项打开Chromedriver,但出现了以下错误。我已经尝试了一个月的很多方法,但仍然没有线索。请帮帮我!

错误消息为:

回溯(最近一次调用):文件“C:\users\owner\desktop\mouseWithOutborders\autocheckin.py”,第15行,在driver=webdriver.chrome中(executable_path=r“C:\users\owner\owner\desktop\mouseWithOutborders\chromedriver.exe”,chrome_options=opts)文件“C:\users\owner\appdata\local\programs\python\python37\lib\sethon37\selenium\webdriver\chromen\webdriver.py”,第75行,在init desired_capabilities=desired_capabilites)文件\selenium\webdriver\remote\webdriver.py“,第156行,在init self.start_session(capabilities,browser_profile)文件”C:\users\owner\appdata\local\programs\python\python37\lib\site-packages\selenium\webdriver\remote\webdriver.py“,第251行,在start_session response=self.execute(command.new_session,parameters)文件”C:\users\owner\appdata\local\programs\python\site-packages\selenium\webdriver\remote\webdriver.py:\users\owner\appdata\local\programs\python\python37\lib\site-packages\selenium\webdriver\remote\errorhandler.py“,第242行,在check_response中升起exception_class(消息,屏幕,堆栈跟踪)selenium.common.exceptions.webdriverexception:消息:未知错误:无法删除旧的devtools端口文件。可能C:\users\owner\appdata\local\google\Chrome\中给定的user-data-dir仍然附加到正在运行的Chrome或Chromium进程。(驱动程序信息:平台=Windows NT 10.0.17738>x86_64)

而我的python测试代码是:

import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.chrome.options import Options
from myidez import ID, PW

opts = webdriver.ChromeOptions()
opts.add_argument('--start-maximized')
opts.add_argument('--headless')
opts.add_argument('--no-sandbox')
opts.add_argument('--disable-dev-shm-usage')
opts.add_argument('--disable-gpu')
opts.add_argument("--user-data-dir= C:\\Users\\owner\\AppData\\Local\\Google\\Chrome\\User Data")
driver = webdriver.Chrome(executable_path=r"./chromedriver.exe", chrome_options=opts)

我发现这个错误来自chromium代码引用:https://chromium.googlesource.com/chromium/src/+/master/chrome/test/chromedriver/chrome_launcher.cc https://peter.sh/experiments/chromium-command-line-switchs/

Status RemoveOldDevToolsActivePortFile(const base::FilePath& user_data_dir) {
  base::FilePath port_filepath = user_data_dir.Append(kDevToolsActivePort);
  // Note that calling DeleteFile on a path that doesn't exist returns True.
  if (base::DeleteFile(port_filepath, false)) {
    return Status(kOk);
  }
  return Status(
      kUnknownError,
      std::string("Could not remove old devtools port file. Perhaps "
                  "the given user-data-dir at ") +
          user_data_dir.AsUTF8Unsafe() +
          std::string(" is still attached to a running Chrome or Chromium "
                      "process."));

共有1个答案

嵇出野
2023-03-14
--user-data-dir= C:\\Users\\owner\\AppData\\Local\\Google\\Chrome\\User Data

你有这个字符串,这是错误的,我有同样的问题,当我使用双引号或空格在路径,删除他们。错误“无法删除旧devtools端口文件”表示在这种情况下,Chrome从您获取了无效路径。删除空格后:

--user-data-dir=C:\\Users\\owner\\AppData\\Local\\Google\\Chrome\\User Data
 类似资料:
  • 我尝试在克隆时更改rootfs dir,如下所示: 但我有一个错误: 然后我尝试使用"-B"选项和"lvm"值在LV中设置rootfs: 我得到了这个错误: 为什么我不能将“-vgname”或“-dir”与“lxc克隆”一起使用<我做错了什么?克隆容器时是否可以更改rootfs dir? PS:我使用Ubuntu14.04和LXC1.0。5.

  • 我在jpa删除传播中遇到了一些奇怪问题:我有一个对象A,它与对象C有一对多关系。我有另一个对象B,它与对象C有一对一关系(A-C和B-C),当我试图删除一个'a'对象时,然后Hibernate删除它,而不删除它的C对象。但在此之前,它尝试使用第二个关系商店选择C对象 以下是日志: 下面是我的代码: 在类中: 在B类中: 在C类中:

  • 我需要删除每天滚动的旧日志文件。要限制我尝试的文件数,请执行以下操作: 但是日志没有被删除。 现在我在尝试 但我得到了一个错误: 错误DefaultRolloverStrategy包含无效元素或属性“Delete” 我的log4j2有点问题。xml文件? 我将maven与以下内容一起使用:

  • 我试图加载一个chrome浏览器与硒使用我现有的帐户和设置从我的个人资料。 我可以使用ChromeOptions来设置userdatadir和配置文件目录。这就像我想要的那样加载浏览器的配置文件,但是浏览器会挂起60秒并超时,而不会继续进行任何自动化操作。 如果我不使用用户数据目录和配置文件设置,它可以正常工作,但不使用我的配置文件。 我所做的阅读表明,不能用同一个配置文件同时打开多个浏览器,因此

  • 问题内容: 我使用以下crontab记录来每天备份数据库: 我想添加另一个crontab记录,该记录将删除早于一个月的数据库转储。 有什么想法吗? 问题答案: 只需创建另一个cron: 它将查找所有早于30天的备份并将其删除。

  • 我正在尝试重建我的Android Studio Gradle项目(主要包含Kotlin代码),但在清理/重建过程中,它开始抛出: 这是在我尝试更改项目的包结构后开始发生的。不幸的是,我是通过重命名和移动源代码文件夹而不是通过Android Studio进行重构来做到的,这是一个坏主意。 我一整天都在寻找这个问题的解决方案,而这些都是我尝试过的没有效果的东西: 执行分级同步; 重新安装Java JR