Selenium Python:单击后如何等待页面加载?

新手上路,请多包涵

我想在点击后获取页面的页面源。然后使用 browser.back() 函数返回。但是 Selenium 不会让页面在点击后完全加载,并且由 JavaScript 生成的内容不会包含在该页面的页面源代码中。

 element[i].click()
#Need to wait here until the content is fully generated by JS.
#And then grab the page source.
scoreCardHTML  = browser.page_source
browser.back()

原文由 abhanan93 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 451
1 个回答

正如 Alan 提到的那样 - 您可以等待加载某些元素。下面是一个示例代码

from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

browser = webdriver.Firefox()
element = WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.ID, "element_id")))

原文由 wisnia 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏