一尘不染

如何在Python中使用Selenium滚动到页面的末尾?

selenium

我试图滚动到页面的末尾,以便可以显示所有数据并将其提取。我试图为它找到一个命令,但是它在Java(driver.executeScript)中可用,但是找不到python。现在我正在使计算机按结束键数千次:

while i<1000:
    scroll = driver.find_element_by_tag_name('body').send_keys(Keys.END)
    i+=1

而且我也尝试过,driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")但是它滚动到加载页面的末尾,并且END键也一样。一旦位于页面底部,将加载下一个内容。但是现在它不再滚动了。

我知道会有一个非常不错的选择。

如何在Python中使用Selenium滚动到页面的末尾?


阅读 491

收藏
2020-06-26

共1个答案

一尘不染

好吧,我终于找到了解决方案:

lenOfPage = driver.execute_script("window.scrollTo(0, document.body.scrollHeight);var lenOfPage=document.body.scrollHeight;return lenOfPage;")
    match=False
        while(match==False):
                lastCount = lenOfPage
                time.sleep(3)
                lenOfPage = driver.execute_script("window.scrollTo(0, document.body.scrollHeight);var lenOfPage=document.body.scrollHeight;return lenOfPage;")
                if lastCount==lenOfPage:
                    match=True
2020-06-26