2017-03-15 179 views
2

您好,我想知道某個元素的屏幕位置。我知道如何在python selenium webriver中獲取元素的位置,但是如何從屏幕的左上角獲得偏移量?[python] [selenium]元素的屏幕位置

image

+0

您只需要一行代碼而不是'x' /'y'座標,對吧? – Andersson

+0

不,我想知道左邊的HTML頁面角的x,y線,我可以添加到webdriver.location的這個結果來獲得某個元素的屏幕位置。 – szmo

回答

5

我想這是不可能的定義與剛剛從selenium瀏覽器窗口的左上角屏幕的頂層角落的距離。但您可以嘗試執行以下操作:

driver = webdriver.Chrome() 
driver.maximize_window() # now screen top-left corner == browser top-left corner 
driver.get("http://stackoverflow.com/questions") 
question = driver.find_element_by_link_text("Questions") 
y_relative_coord = question.location['y'] 
browser_navigation_panel_height = driver.execute_script('return window.outerHeight - window.innerHeight;') 
y_absolute_coord = y_relative_coord + browser_navigation_panel_height 
x_absolute_coord = question.location['x'] 
+0

謝謝,它適用於我的情況:) – szmo

+0

即使在java中也能正常工作 – rodi