将 Playwright 用于 Python,如何等待字段/选择器结果更改
Using Playwright for Python, how can I wait for a field / selector result to change
使用 Playwright Python,我想等待内容的更改。
我可以得到一个select或者像这样
的内容
month = page.querySelector('.day__month_btn').innerText()
在这个例子中,我正在读取日期选择器元素的月份值
并希望下个月 select。然后等待,直到月份改变。
要更改月份,我可以单击下个月图标
page.querySelector('.next').click()
我现在想等到点击被接受。
等待的一种 hacky 方法是重复获取值直到它改变
while True:
if page.querySelector('.day__month_btn').innerText() != month:
break
time.sleep(0.2)
在现实世界中,我还需要检查超时。
有更好的方法吗?
您可以使用 waitForFunction
:
month = page.querySelector(".day__month_btn").innerText()
page.waitForFunction("document.querySelector('.day__month_btn').innerText() !== '" + month + "'")
使用 Playwright Python,我想等待内容的更改。
我可以得到一个select或者像这样
的内容month = page.querySelector('.day__month_btn').innerText()
在这个例子中,我正在读取日期选择器元素的月份值 并希望下个月 select。然后等待,直到月份改变。
要更改月份,我可以单击下个月图标
page.querySelector('.next').click()
我现在想等到点击被接受。
等待的一种 hacky 方法是重复获取值直到它改变
while True:
if page.querySelector('.day__month_btn').innerText() != month:
break
time.sleep(0.2)
在现实世界中,我还需要检查超时。
有更好的方法吗?
您可以使用 waitForFunction
:
month = page.querySelector(".day__month_btn").innerText()
page.waitForFunction("document.querySelector('.day__month_btn').innerText() !== '" + month + "'")