等待url

wait_for_url方法可以等待某个特定的url
wait_for_url(url, options)` 方法:该方法会等待 URL 包含指定的字符串。

url:要等待的 URL。
options:等待选项,例如等待超时时间。

示例:

page.wait_for_url('https://example.com', timeout=10000)

实践代码:

'''
author: 测试-老姜   交流微信/QQ:349940839
欢迎添加微信或QQ,加入学习群共同学习交流。
QQ交流群号:877498247
'''

from playwright.sync_api import Playwright, sync_playwright, expect
playwright = sync_playwright().start()
browser = playwright.chromium.launch(headless=False, args=['--start-maximized']) #默认无头模式,设置浏览器最大化
context = browser.new_context(no_viewport=True) # 创建上下文,相当浏览器于实例化,即打开浏览器
page = context.new_page() # 打开一个新标签页
page.goto("http://127.0.0.1:8080/oa/") # 打开网址
page.locator("input[name=\"loginId\"]").fill("sup")
password_input = page.locator("input[name=\"password\"]")
password_input.fill("s1234567")
page.get_by_role("button", name="登录").click()
page.wait_for_url('http://127.0.0.1:8080/oa/index.jsp')
context.close()
browser.close()

很多时候,点击的url后面会附带参数,这个参数是变动的,这是后需要用正则去匹配
最典型的情况是等待一个页面加载:page.wait_for_url(http://xxxxx?id=123456)
从源码可以看出我们是可以传入正则表达式的:

page.wait_for_url(re.compile("http://127.0.0.1:8080/oa/index [\s\S]*"))
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐