当我在 chrome 配置文件中时,Selenium 不会打开 URL
存在一个问题,它只是打开标准起始页,并且对 browser.get() 行没有反应。 当我在没有配置文件的情况下使用它时,它工作得很好。
我也需要打开我的个人资料
这是代码:
from selenium import webdriver
import selenium.webdriver.support.ui as ui
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
import time
import os
opt = webdriver.ChromeOptions()
opt.binary_location = r'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe'
chromedriver_exe_location = os.path.join(os.getcwd(), 'chromedriver.exe')
profile_path = r'C:\\Users\\rektl\\AppData\\Local\\Google\\Chrome\\User Data'
opt.add_argument('--user-data-dir={}'.format(profile_path))
opt.add_argument('--profile-directory={}'.format('Profile 2'))
browser = webdriver.Chrome(chromedriver_exe_location, options=opt, service_args='')
browser.get("https:\\youtube.com")
There is a problem that it just opens the standart start page and isn't reacting to browser.get() line.
When i'm using it without profile it works just fine.
I need my profile to be opened too
Here is code:
from selenium import webdriver
import selenium.webdriver.support.ui as ui
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
import time
import os
opt = webdriver.ChromeOptions()
opt.binary_location = r'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe'
chromedriver_exe_location = os.path.join(os.getcwd(), 'chromedriver.exe')
profile_path = r'C:\\Users\\rektl\\AppData\\Local\\Google\\Chrome\\User Data'
opt.add_argument('--user-data-dir={}'.format(profile_path))
opt.add_argument('--profile-directory={}'.format('Profile 2'))
browser = webdriver.Chrome(chromedriver_exe_location, options=opt, service_args='')
browser.get("https:\\youtube.com")
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
问题
使用 chrome 数据,您一次只能打开 chrome 浏览器的一个实例。我猜您还打开了另一个浏览器。
解决方案
如果您没有登录网站的目的,那么我不建议使用chrome 数据。您还可以将代码缩短为仅这两行。 没有传递参数,因为您现在没有 chrome 选项,并且 chrome 驱动程序已在您的 cwd 中:
Issue
Using chrome data, you can only have one instance of a chrome browser open at once. I am guessing that you have an additional browser open.
Solution
If you have no purpose of logging into the site, then I do not recommend using chrome data. You can also shorten your code to just these two lines. There are no passed parameters since you now have no chrome options and your chrome driver is already in your cwd: