gpt4 book ai didi

javascript - Selenium:在动态加载网页时滚动到页面末尾

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:46:44 27 4
gpt4 key购买 nike

我有一个网页,在向下滚动页面时不断加载新项目,直到所有项目都加载完毕。

我在 Java 中使用 Selenium,需要向下滚动到页面底部才能加载所有内容。

我尝试了几种不同的选择,比如滚动到页面底部的一个元素:

WebElement copyrightAtEndOfPage = webDriver.findElement(By.xpath("//a[@href='/utils/copyright.html']"));
((JavascriptExecutor) webDriver).executeScript("arguments[0].scrollIntoView();", copyrightAtEndOfPage);

这只会向下滚动一次,然后网页会继续加载。

我也试过this方法,也只向下滚动一次,因为它只考虑浏览器高度。

非常感谢任何帮助。

最佳答案

我将为此提供 Python 代码。我认为它很容易翻译成 Java:

def scroll_down(self):
"""A method for scrolling the page."""

# Get scroll height.
last_height = self.driver.execute_script("return document.body.scrollHeight")

while True:

# Scroll down to the bottom.
self.driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

# Wait to load the page.
time.sleep(2)

# Calculate new scroll height and compare with last scroll height.
new_height = self.driver.execute_script("return document.body.scrollHeight")

if new_height == last_height:

break

last_height = new_height

希望对你有帮助!

关于javascript - Selenium:在动态加载网页时滚动到页面末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48850974/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com