Selenium not using Default Chrome Profile(Selenium 不使用默认 Chrome 配置文件)
问题描述
Selenium 不会加载我的默认 Chrome 配置文件,我不知道为什么.我已经尝试过配置文件 1 和默认配置文件,但出现相同的错误(如下).我已通过任务管理器确认所有 Chrome 窗口在运行此代码之前都已关闭.有什么想法吗?
Selenium will not load my default Chrome Profile and I cannot figure out why. I have tried both Profile 1 and a Default profile with the same error (below). I have confirmed with Task Manager that all Chrome windows are shut down before running this code. Any thoughts?
from selenium import webdriver
from bs4 import BeautifulSoup
import pandas as pd
import numpy as np
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
import os
os.system("taskkill /f /im geckodriver.exe /T")
os.system("taskkill /f /im chromedriver.exe /T")
os.system("taskkill /f /im IEDriverServer.exe /T")
os.system("taskkill /f /im chrome.exe /T")
driver2 = r"C:Usersxxx.wdmdriverschromedriver87.0.4280.20win32chromedriver.exe"
options = webdriver.ChromeOptions()
options.add_argument("user-data-dir=C:\Usersxxx\AppData\Local\Google\Chrome\User Data\Profile 1")
driver = webdriver.Chrome(executable_path=driver2, chrome_options=options)
driver.get("https://www.google.co.in")
Traceback (most recent call last):
File "C:UsersxxxOneDrivePythonpyReportRun.py", line 16, in <module>
driver = webdriver.Chrome(ChromeDriverManager().install(), options=options)
File "C:Python38libsite-packagesseleniumwebdriverchromewebdriver.py", line 76, in __init__
RemoteWebDriver.__init__(
File "C:Python38libsite-packagesseleniumwebdriver
emotewebdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "C:Python38libsite-packagesseleniumwebdriver
emotewebdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "C:Python38libsite-packagesseleniumwebdriver
emotewebdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:Python38libsite-packagesseleniumwebdriver
emoteerrorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Could not remove old devtools port file. Perhaps the given user-data-dir at C:UsersxxxAppDataLocalGoogleChromeUser DataProfile 1 is still attached to a running Chrome or Chromium process
推荐答案
chrom_options.add_argument("user-data-dir=C:\Users
obert.car\AppData\Local\Google\Chrome\User Data")
chrom_options.add_argument("profile-directory=Profile 1")
user-data-dir 将 profile 视为默认值,您不必指定它.如果是其他东西,则通过 profile-directory 参数指定它
user-data-dir considers profile as default , and you don't have to specify that . If its something else specify it through profile-directory argument
创建个人资料的步骤:
打开:地址栏中的 chrome://version
open : chrome://version in address bar
复制用户目录文件夹完全到例如c: mp ewdir
copy the user dir folder completely to eg c: mp ewdir
打开复制的用户数据 (newdir) 并搜索名为 Default 的文件夹.这是个人资料文件夹.
open the copied user data (newdir) and search for folder called Default . This is the profile folder.
重命名默认文件夹为Profile 1"
rename the Default folder as "Profile 1"
现在使用这个:
chrom_options.add_argument("user-data-dir=c:\tmp\newdir")
chrom_options.add_argument("profile-directory=Profile 1")
这篇关于Selenium 不使用默认 Chrome 配置文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Selenium 不使用默认 Chrome 配置文件
基础教程推荐
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
