【发布时间】:2014-12-21 09:44:43
【问题描述】:
我想抓取无限滚动实现的页面的所有数据。以下 python 代码有效。
for i in range(100):
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
time.sleep(5)
这意味着每次我向下滚动到底部时,我都需要等待 5 秒,这通常足以让页面完成加载新生成的内容。但是,这可能没有时间效率。页面可能会在 5 秒内完成加载新内容。每次向下滚动时,如何检测页面是否完成加载新内容?如果我能检测到这一点,我可以在知道页面完成加载后再次向下滚动以查看更多内容。这样更省时。
【问题讨论】:
-
了解更多有关该页面的信息可能会有所帮助。元素是顺序的还是可预测的?您可以通过使用 id 或 xpath 检查可见性来等待元素加载
-
我正在抓取以下页面:pinterest.com/cremedelacrumb/yum
-
这能回答你的问题吗? Wait for page load in Selenium
标签: python selenium execute-script