python - 滚动到网页底部

标签 python html selenium selenium-webdriver infinite-scroll

我正在尝试制作一个小脚本,它可以查看网页主页并查找添加内容。

问题是有些网页包含无限滚动。如果此代码是为特定网页构建的,我可以使用定位元素和滚动。

但是我不知道如何让 Selenium 在任何页面的最底部滚动?

self.driver.execute_script("window.scrollTo(0, something);")

PS:如果页面很大,滚动几秒后将其分解。

你知道怎么做吗?

最佳答案

这是我用于 Java 的另一种方法,获取窗口大小,然后使用 javascript 滚动到该位置。下面是如何用 Java 实现这一点(希望你也能在 Python 中实现这个概念)-

double pageHeight = testBase.TestBase.driver.manage().window().getSize().getHeight();
driver.executeScript("window.scrollBy(0,"+pageHeight+")");

如果您要实现无限滚动,则可以将 executeScript() 行放入循环中。希望对您有所帮助。

关于python - 滚动到网页底部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32284631/

相关文章:

python - 加载pickle文件: 'DataFrame' object has no attribute '_data' 后引发异常

python - PyQt4:数据绑定(bind)?

javascript - 是创建元素更好还是只在 html 上准备好它们?

javascript - 具有不同元素大小的可拖动轮播菜单

javascript - jQuery/javascript 默认显示第一个选项卡

python - Selenium、动态内容、chrome webdriver

python - 滚动到 Selenium 中的下一个元素(Python)

python - Selenium 错误 : This version of ChromeDriver only supports Chrome version 83?

Python连续写入失败

python - 启动时将参数传递给pyqt线程