Python 如何通过Selenium快速获取网页上所有元素的大小和位置

Python 如何通过Selenium快速获取网页上所有元素的大小和位置,python,selenium,Python,Selenium,我需要得到网页上每个元素的大小和位置。 如果我尝试天真的方法,那么它会非常慢(通常,处理一些常见页面(如www.amazon.com等)需要大约2分钟) 有没有更快的方法来获取这些信息 我天真的做法: 从selenium导入webdriver driver=webdriver.Chrome(…“\chromedriver.exe”) 驱动程序。获取(“https://www.amazon.com") html=驱动程序。通过标签名称(“html”)查找元素 对于html中的e。通过\u css\

我需要得到网页上每个元素的大小和位置。 如果我尝试天真的方法,那么它会非常慢(通常,处理一些常见页面(如www.amazon.com等)需要大约2分钟)

有没有更快的方法来获取这些信息

我天真的做法:

从selenium导入webdriver
driver=webdriver.Chrome(…“\chromedriver.exe”)
驱动程序。获取(“https://www.amazon.com")
html=驱动程序。通过标签名称(“html”)查找元素
对于html中的e。通过\u css\u选择器(“*”)查找\u元素\u:
尺寸=e.size
位置=e.位置

我不确定您希望如何处理这些信息,但请使用javascript执行器运行以下javascript。如果您需要不同格式的数据,可以随意编辑它,但您希望您的脚本使用它。获取所有这些信息大约需要1秒的时间

var returnValues=“”;
变量els=$(“*:可见”);
对于(变量x=0;x返回值尝试使用“无头”色度为什么需要所有这些?页面上的大多数元素可能不可见,因此没有位置和大小。太好了,它工作得非常好。这是我网页分类研究项目的一部分,所以我希望它能帮助我对网页类型进行分类。非常感谢你的帮助。它极大地提高了我的应用程序的性能。