使用 Selenium 的 Chromedriver 用户数据配置
Chromdriver UserData configuration with Selenium
我有这个简单的 Selenium 函数
def config():
path = r'C:\Users\George\Desktop\Bot\User Data'
options = webdriver.ChromeOptions()
options.add_argument('user-data-dir=' + path)
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled')
driver = webdriver.Chrome(executable_path=r'C:\Users\George\Desktop\Bot\chromedriver.exe', chrome_options=options)
return driver
它工作正常并且符合预期,但是我正在制作一个简单的机器人来在需要会话和 cookie 等的网站上执行任务。
所以我时不时要做的就是从以下位置复制真实的浏览器用户数据:
C:\Users\George\AppData\Local\Google\Chrome\User Data
到我的随机位置
'C:\Users\George\Desktop\Bot\User Data'
它工作正常,我这样做的原因是我想避免登录,并让我使用的浏览器独立于 bot 驱动程序浏览器,而且我通常把它放下,从不打开它做我的工作。
问题
- 有没有办法,我可以自动获取复制文件的当前会话瞬间(比如打开一个包含所有信息的选项卡)?
- 有更好的方法吗? (我相信有很多更好的方法)
感谢您的帮助,非常感谢任何建议、链接、博客。
您不需要从以下位置复制真实浏览器用户数据:
C:\Users\George\AppData\Local\Google\Chrome\User Data
至:
C:\Users\George\Desktop\Bot\User Data
如果您不时将 user-data-dir
指向真实的 google-chrome User Data 目录,如下所示:
def config():
options = webdriver.ChromeOptions()
# next line you need to replace the random location with actual browser data location
options.add_argument(r"--user-data-dir=C:\Users\George\AppData\Local\Google\Chrome\User Data")
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled')
driver = webdriver.Chrome(executable_path=r'C:\Users\George\Desktop\Bot\chromedriver.exe', chrome_options=options)
return driver
参考资料
您可以在以下位置找到一些相关的详细讨论:
我有这个简单的 Selenium 函数
def config():
path = r'C:\Users\George\Desktop\Bot\User Data'
options = webdriver.ChromeOptions()
options.add_argument('user-data-dir=' + path)
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled')
driver = webdriver.Chrome(executable_path=r'C:\Users\George\Desktop\Bot\chromedriver.exe', chrome_options=options)
return driver
它工作正常并且符合预期,但是我正在制作一个简单的机器人来在需要会话和 cookie 等的网站上执行任务。
所以我时不时要做的就是从以下位置复制真实的浏览器用户数据:
C:\Users\George\AppData\Local\Google\Chrome\User Data
到我的随机位置
'C:\Users\George\Desktop\Bot\User Data'
它工作正常,我这样做的原因是我想避免登录,并让我使用的浏览器独立于 bot 驱动程序浏览器,而且我通常把它放下,从不打开它做我的工作。
问题
- 有没有办法,我可以自动获取复制文件的当前会话瞬间(比如打开一个包含所有信息的选项卡)?
- 有更好的方法吗? (我相信有很多更好的方法)
感谢您的帮助,非常感谢任何建议、链接、博客。
您不需要从以下位置复制真实浏览器用户数据:
C:\Users\George\AppData\Local\Google\Chrome\User Data
至:
C:\Users\George\Desktop\Bot\User Data
如果您不时将 user-data-dir
指向真实的 google-chrome User Data 目录,如下所示:
def config():
options = webdriver.ChromeOptions()
# next line you need to replace the random location with actual browser data location
options.add_argument(r"--user-data-dir=C:\Users\George\AppData\Local\Google\Chrome\User Data")
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled')
driver = webdriver.Chrome(executable_path=r'C:\Users\George\Desktop\Bot\chromedriver.exe', chrome_options=options)
return driver
参考资料
您可以在以下位置找到一些相关的详细讨论: