我正在使用 python seleniumbase 来验证网站。 到达某个 url 后,使用 self.get_page_source() 方法验证 html。
在url中有一个配置表单页面的按钮。 单击按钮后,屏幕发生变化,但浏览器导航栏上的 URL 保持不变。 self.get_page_source() 方法还返回单击按钮之前的前一个 html。
在浏览器中,使用查看页面源代码仅返回顶级 html。 当从浏览器检查按钮元素时,会返回正确的 html。
如何使用seleniumbase在按钮点击后返回当前的html?
以下是一个 seleniumbase python 脚本示例。 第二个 print(html) 不正确,因为屏幕发生了变化,但它仍然打印相同的初始 html。 在单击按钮之前和之后,浏览器导航栏上的 url 保持不变。
单击按钮后如何检索最终的 html?
self.open("https://www.example.com/dashboard")
url = self.get_current_url()
print(url) # Prints https://www.example.com/dashboard, which is correct
html = self.get_page_source()
print(html) # Prints the initial html of https://www.example.com/dashboard, which is correct
self.click("//span[contains(.,'Change Screen Button')]")
url = self.get_current_url()
print(url) # Prints https://www.example.com/dashboard, which is correct since the url remains the same on the browser navigation bar, even though the screen changed
html = self.get_page_source()
print(html) # Prints the initial html of https://www.example.com/dashboard, which is incorrect