【发布时间】:2020-01-27 02:35:39
【问题描述】:
我正在尝试使用 Chromedriver、Selenium + Python 获取 pdf 文件的滚动高度。代码如下:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.adobe.com/content/dam/acom/en/accessibility/products/acrobat/pdfs/acrobat-x-accessibility-checker.pdf")
total_height = driver.execute_script("return Math.max( document.body.scrollHeight, document.body.offsetHeight, document.documentElement.clientHeight, document.documentElement.scrollHeight, document.documentElement.offsetHeight );")
输出是925 然而,总的滚动高度应该超过这个pdf有7页......想法?
【问题讨论】:
-
可能
925指的是屏幕上当前可见的高度,而不是整个文档的高度。 -
使用 selenium 下载 PDF 并获取基于 stackoverflow.com/questions/6230752/… 的 PDF 属性
-
@Christine 正确,我的代码显示当前视口的高度。但是,我想获取页面的总滚动高度,而不仅仅是视口高度。
-
如果无法获得总滚动高度,您总是可以获取视口高度,然后向下滚动视口高度,获取新视口高度,并跟踪“总和” ' 直到您到达 PDF 的底部。我对此不是很熟悉,所以这只是一个通用的建议。
-
@Christine 向下滚动不起作用。它总是显示第一页。
driver.execute_script("window.scrollTo({0}, {1})".format(x, y))
标签: javascript python selenium selenium-chromedriver height