微夏最近在测测Python打开网页时,发现打开网页时不显示之前的登录信息。
经多次调试后最终成功显示。以此文章记录,以便后期翻看。
from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.chrome.service import Service # 指定Chrome用户数据目录的路径 user_data_dir = 'C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\User Data' # 设置ChromeDriver的路径 chromedriver_path = './chrome/chromedriver-win64/chromedriver.exe' # 创建Service对象,指定ChromeDriver的路径 service = Service(chromedriver_path) # 设置Chrome选项以保持之前的登录状态 options = webdriver.ChromeOptions() # 这将加载之前用户的个人资料,包括登录信息 options.add_argument(f"--user-data-dir={user_data_dir}") # 创建WebDriver实例,使用Service对象 driver = webdriver.Chrome(service=service,options=options) # 打开百度首页 driver.get("https://www.baidu.com") # 找到搜索框元素 search_box = driver.find_element(By.ID, 'kw') # 在搜索框中输入文本 search_box.send_keys('vxia.net') # 按下回车键执行搜索 search_box.send_keys(Keys.RETURN) # 手动关闭浏览器 input("Press Enter to close the browser...") # 关闭浏览器 driver.quit()
主要内容为:
# 指定Chrome用户数据目录的路径
user_data_dir = 'C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\User Data'
此处为双斜杠
# 这将加载之前用户的个人资料,包括登录信息
options.add_argument(f"--user-data-dir={user_data_dir}")