python playwright 保存登录状态例程
·
python playwright 保存登录状态例程:
from playwright.sync_api import sync_playwright
import os
# 存储状态的路径
STATE_PATH = "auth_state.json"
def login_and_save_state():
with sync_playwright() as p:
browser = p.chromium.launch(headless=False)
context = browser.new_context()
page = context.new_page()
# 访问登录页面并进行登录操作(替换为你的实际登录流程)
page.goto("https://www.example.com/")
input("在浏览器中完成登录操作后,按Enter键继续...")
# 保存认证状态到文件
context.storage_state(path=STATE_PATH)
print(f"认证状态已保存到 {STATE_PATH}")
browser.close()
def use_saved_state():
if not os.path.exists(STATE_PATH):
print("没有找到保存的状态文件,请先运行登录函数")
return
with sync_playwright() as p:
browser = p.chromium.launch(headless=False)
# 使用保存的状态创建新上下文
context = browser.new_context(storage_state=STATE_PATH)
page = context.new_page()
# 访问需要认证的页面验证状态是否有效
page.goto("https://www.example.com/")
# 验证是否已登录(根据实际情况调整)
#assert "Dashboard" in page.title()
print("成功使用保存的登录状态访问受保护页面")
# 保持浏览器打开以便查看
input("按Enter键关闭浏览器...")
browser.close()
if __name__ == "__main__":
# 第一次运行时执行登录并保存状态
# login_and_save_state()
# 后续运行可以使用保存的状态
use_saved_state()
更多推荐



所有评论(0)