当前位置: 首页 > 面试题库 >

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

闾丘书
2023-03-14
问题内容

我试图滚动到页面的末尾,以便可以显示所有数据并将其提取。我试图为它找到一个命令,但是它在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滚动到页面的末尾?


问题答案:

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

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


 类似资料:
  • 我正在尝试滚动到一个页面的末尾,这样我就可以使所有的数据可见并提取出来。我试图为它找到一个命令,但它在java(driver.executescript)中可用,但在Python中找不到。现在我正在让电脑按下end键上千次: 我还尝试了,但它会滚动到加载页面的末尾,与end键所做的相同。一旦在页面底部,下一个内容加载。但现在它不再滚动了。 我知道会有一个很好的替代方案。 如何在Python中使用s

  • 我需要滚动到facebook页面的末尾,这样我就可以加载所有的帖子,我怎么能在页面还在加载的时候用selenium做到这一点?

  • 问题内容: 我有一个网页,当向下滚动页面直到每个项目都被加载时,它会不断加载新项目。 我正在使用Java中的Selenium,需要向下滚动到页面底部才能加载所有内容。 我尝试了几种不同的选项,例如滚动到页面底部的元素: 不过,这只会向下滚动一次,然后网页会继续加载。 我也尝试过这种方法,该方法也只能向下滚动一次,因为它只考虑了浏览器的高度。 非常感谢您的帮助。 问题答案: 我将为此提供Python

  • 我有一个网页,不断加载新项目时,向下滚动页面,直到每个项目都加载。 我正在使用Java中的Selenium,需要向下滚动到页面底部才能加载所有内容。 我尝试了几种不同的选项,比如滚动到页面底部的某个元素: 这只是向下滚动一次,然后网页继续加载。 我也尝试过这种方法,它也只向下滚动一次,因为它只考虑了浏览器的高度。 任何帮助都非常感谢。

  • 问题内容: 使用Python和Selenium时,我在滚动到网页顶部时遇到问题。 当页面由于某种原因加载时,您将被带到页面底部(这是固定的)。但是,当我尝试滚动到顶部时,它不起作用。 我尝试了以下方法: 和 我也尝试过找到该元素,然后滚动到它: 向下滚动到元素时,上面的scrollIntoView()代码适用。但是,它无法向上滚动。 我已经尝试过运行Chrome驱动程序和PhantomJs。 有什

  • 问题内容: 我目前正在使用Selenium Webdriver通过Facebook用户朋友页面进行解析,并从AJAX脚本中提取所有ID。但是我需要向下滚动才能得到所有的朋友。如何在Selenium中向下滚动。我正在使用python。 问题答案: 你可以使用 其中Y是高度(在全高清显示器上为1080)。 你也可以使用 滚动到页面底部。 如果你想滚动到无限加载的页面,例如社交网络页面,facebook