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

How to get screen coordinate of a element in selenium? [Python]

我想知道如何根据屏幕分辨率而不是浏览器 windows 大小获取元素的坐标,我已经试过了(代码块),但它根据到浏览器 window 而不是屏幕

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

我可以使用任何替代方法吗?

解释我的意思的糟糕尝试:

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

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)