微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何获取硒中元素的屏幕坐标? [Python]

如何解决如何获取硒中元素的屏幕坐标? [Python]

我想知道如何根据屏幕分辨率而不是浏览器窗口大小来获取元素的坐标,我已经尝试过这个(代码块),但它根据浏览器窗口而不是提供坐标屏幕

element = driver.find_element_by_xpath("//*[@id='search_form_input_homepage']")
print(element.location)

我可以使用任何替代品吗?

一个糟糕的尝试来解释我的意思:

注意:driver.execute_script 是不允许的,因为该网站有机器人拦截器 :(

This is the visual representation of what im trying to say

解决方法

print(element.location_once_scrolled_into_view)

尝试一下,如果这有帮助,可以在以下位置找到更多可用的方法,例如 size rect 等:

https://www.selenium.dev/selenium/docs/api/py/webdriver_remote/selenium.webdriver.remote.webelement.html#module-selenium.webdriver.remote.webelement

,

您可以使用 .size.location 来获取尺寸。

试试这个:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep,strftime

url = "some url"

webdriver = webdriver.Chrome()
webdriver.get(url)


webdriver.fullscreen_window()

cookies = webdriver.find_element_by_xpath("xome xpath")

location = cookies.location
size = cookies.size
w,h = size['width'],size['height']

print(location)
print(size)
print(w,h)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。