python - 如何使用 Selenium 使用我的书签和设置打开浏览器实例?
问题描述
我使用勇敢的浏览器作为我的默认浏览器,但我想知道当我运行我的代码而不是没有我所有的书签和密码的新实例时,是否可以打开我的常规浏览器配置文件?
提前致谢!
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time
import datetime
day = datetime.datetime.now()
dag = day.weekday()
def Testing():
if dag >= 5:
return Weekend()
else:
return Weekday()
def Weekend():
options = Options()
options.add_argument("--window-size=1920,1080")
## options.add_argument("/Users/vadim/Library/Application Support/BraveSoftware/Brave-Browser")
options.binary_location = '/Applications/Brave Browser.app/Contents/MacOS/Brave Browser'
driver_path = '/usr/local/bin/chromedriver'
driver = webdriver.Chrome(options=options, executable_path=driver_path)
driver.get('https://outlook.live.com/mail/0/inbox')
Outlook_Aanmelden = driver.find_element_by_xpath('/html/body/header/div/aside/div/nav/ul/li[2]/a')
Outlook_Aanmelden.click()
Email_Field = driver.find_element_by_xpath('//*[@id="i0116"]')
Email_Field.send_keys('@live.com')
Outlook_Volgende = driver.find_element_by_xpath('//*[@id="idSIButton9"]')
Outlook_Volgende.click()
time.sleep(0.5)
Password_Field = driver.find_element_by_xpath('//*[@id="i0118"]')
Password_Field.send_keys('pass')
Password_Field.send_keys(Keys.ENTER)
Inlog_Outlook = driver.find_element_by_xpath('//*[@id="idSIButton9"]')
Inlog_Outlook.click()
driver.execute_script("window.open('https://youtube.com');")
def Weekday():
options = Options()
options.add_argument("--window-size=1920,1080")
## options.add_argument("/Users/vadim/Library/Application Support/BraveSoftware/Brave-Browser")
options.binary_location = '/Applications/Brave Browser.app/Contents/MacOS/Brave Browser'
driver_path = '/usr/local/bin/chromedriver'
driver = webdriver.Chrome(options=options, executable_path=driver_path)
driver.get('https://outlook.live.com/mail/0/inbox')
Outlook_Aanmelden = driver.find_element_by_xpath('/html/body/header/div/aside/div/nav/ul/li[2]/a')
Outlook_Aanmelden.click()
Email_Field = driver.find_element_by_xpath('//*[@id="i0116"]')
Email_Field.send_keys('@live.com')
Outlook_Volgende = driver.find_element_by_xpath('//*[@id="idSIButton9"]')
Outlook_Volgende.click()
time.sleep(0.5)
Password_Field = driver.find_element_by_xpath('//*[@id="i0118"]')
Password_Field.send_keys('pass')
Password_Field.send_keys(Keys.ENTER)
Inlog_Outlook = driver.find_element_by_xpath('//*[@id="idSIButton9"]')
Inlog_Outlook.click()
driver.execute_script("window.open('https://youtube.com');")
Testing()
所以是的,这个问题已经有一段时间了,还没有找到任何似乎知道解决方案的人,也许你可以帮助我?
解决方案
您需要chrome
像这样加载您的用户配置文件。假设它是铬而不是勇敢。
from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('user-data-dir=<path to chrome profile>')
browser = webdriver.Chrome(chrome_options=chrome_options)
Chrome 的默认配置文件文件夹的位置因您的平台而异。地点是:
Windows 7, 8.1, and 10: C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default
Mac OS X El Capitan: Users/<username>/Library/Application Support/Google/Chrome/Default
Linux: /home/<username>/.config/google-chrome/default
推荐阅读
- arrays - memory for array initialization with string literal
- python - TypeError: 'NoneType' object is not iterable , python opencv
- mysql - Self join within the table in mariaDB
- javascript - Return PHP value to AJAX confusion
- android - Fragment reloading again when switching back to it
- javascript - How do I actually add Filesystem Access API to javascript?
- python - to convert the datetime.time into string
- python-3.x - 尝试在 Jupyter Notebook 环境中执行二进制文件时出现“找不到命令错误”
- c# - Rest Api 将空值传递给 sql 数据库
- java - Hibernate JPA实体可以持有和操作多少字段?