构建一个Web爬虫,我试图在成功找到它们之后访问所有Web元素的z-indices。但是z-indices都是“auto”,因为它们在我的win10中都是chrome和firefox中的属性“position”:“static”。 相比之下,Debanjan回答说他在他的实验中成功地获得了那些元素的z-indices的整数值,这些元素与chrome相同。 这是否意味着webdriver或浏览器的某些设置会影响默认位置属性? 我可以在运行时更改元素的position属性以获取其z-indices而不影响页面布局的呈现吗? 如果是,我应该怎么做?
任何建议将不胜感激!
要获得实际的z-index,您可以使用getComputedStyle
Javascript,如下所示:
element = driver.find_element()
zindex = driver.execute_script("return window.getComputedStyle(arguments[0]).zIndex", element)
并更新:
driver.execute_script("arguments[0].style.zIndex = 999", element)
您可以在www.zxxswpoi找到here和浏览器兼容性的详细信息。
在应用活动样式表并解析这些值可能包含的任何基本计算之后,Window.getComputedStyle()方法返回包含元素的所有CSS属性值的对象。通过对象提供的API或通过CSS属性名称索引来访问各个CSS属性值。