当前位置: 首页 > wzjs >正文

乐清手机网站设计黑帽seo技术培训

乐清手机网站设计,黑帽seo技术培训,软件自学网官方网站,建设企业网站首页保存storage_state信息 背景 使用playwright进行UI测试时,使用context.storage_state()保存若依CMS登录后的cookie信息失败,输出结果为空始终无法获取登录状态信息,但是断点调试又存在storage信息,这就很疑惑。 核心原因 playwri…

保存storage_state信息

背景

使用playwright进行UI测试时,使用context.storage_state()保存若依CMS登录后的cookie信息失败,输出结果为空始终无法获取登录状态信息,但是断点调试又存在storage信息,这就很疑惑。

核心原因

playwright登录若依CMS时,成功后会跳转到/index页面。

但是playwright在确认登录成功后,就会关闭浏览器,而若依CMS会在跳转/index页面时,设置cookie等信息。

也就造成了我们获取不到cookie信息的原因。因此在后续代码中添加等待事件。page.wait_for_url()

输出storage信息

  • print(storage),cookie结果为null,但是打断点输出storage时,又有数据。
{'cookies': [], 'origins': []}

代码

原始代码,无法获取storage登录状态信息

import jsonfrom playwright.sync_api import Playwright, sync_playwrightdef run(playwright: Playwright) -> None:browser = playwright.chromium.launch(headless=False)context = browser.new_context()page = context.new_page()page.goto("http://81.70.166.221:8080/login")page.get_by_role("textbox", name="用户名").click()page.get_by_role("textbox", name="用户名").fill("admin")page.get_by_role("textbox", name="密码").click()page.get_by_role("textbox", name="密码").fill("admin123")page.get_by_role("button", name="登录").click()# page.pause()# 保存storage state 到指定的文件storage = context.storage_state(path='../auth/ry_auto.json')# ---------------------context.close()browser.close()with sync_playwright() as playwright:run(playwright)

改进后,添加等待事件wait_for_url

import jsonfrom playwright.sync_api import Playwright, sync_playwrightdef run(playwright: Playwright) -> None:browser = playwright.chromium.launch(headless=False)context = browser.new_context()page = context.new_page()page.goto("http://81.70.166.221:8080/login")page.get_by_role("textbox", name="用户名").click()page.get_by_role("textbox", name="用户名").fill("admin")page.get_by_role("textbox", name="密码").click()page.get_by_role("textbox", name="密码").fill("admin123")page.get_by_role("button", name="登录").click()# 等待时间,等待页面跳转,作为登录成功的标准page.wait_for_url(url='http://81.70.166.221:8080/index')# 添加断点# page.pause()# 保存storage state 到指定的文件storage = context.storage_state(path='../auth/ry_auto.json')print(storage)# ---------------------context.close()browser.close()with sync_playwright() as playwright:run(playwright)
http://www.dtcms.com/wzjs/168301.html

相关文章:

  • 护肤品网站建设的摘要网址大全是ie浏览器吗
  • 中国多少个省份31个省搜狗网站seo
  • 网站维护运营今日头条热榜
  • 站台建筑百度收录链接
  • 深圳出台科技支持政策seopeixun
  • 用jsp做的网站需要什么工具栏北京seo顾问外包
  • 个人网站设计作品图片咸阳seo
  • 如何做网站自适应下列关于友情链接说法正确的是
  • 成都科技网站建设电话多少网站建设山东聚搜网络
  • b2b电商平台是什么意思seo体系百科
  • 怎么做一直弹窗口网站服务器租用
  • 成绩分析智能网站怎么做西安seo技术
  • 做网站视频存储在哪里百度后台推广登录
  • 做押韵句子的网站深圳百度地图
  • 中小型网站建设自助建站免费建站平台
  • 建立网站多少钱搜索引擎和浏览器
  • 青岛知名网站建设哪家好域名交易平台
  • 做网站需要营业执照吗怎么样做免费的百度seo
  • 免费自助网站建设常州网站seo
  • 设计师个人网站怎么做超云seo优化
  • 厦门h5网站建设十大营销策略有哪些
  • 直播源码seo外链是什么意思
  • 广西南宁网站公司做一个网站需要多少钱
  • 郓城做网站网络公司aso优化技术
  • 地方房地产网站如何让自己的网站快速被百度收录
  • ppt接单兼职网站石家庄百度推广排名优化
  • 企业网站 手机网站 app 微网站长沙排名优化公司
  • 东莞找工作最新招聘信息学生班级优化大师
  • 网站建设初期怎么添加内容周口网络推广公司
  • java制作的网站友情链接作用