2017-03-17 16 views
0

Web要素のx、y座標(画面上に開いているWebページの一部)を検索しようとしていて、robotframeworkを使った自動テストが実行されています。Pythonを使用して画面上のテキストのxy座標を見つける

私は関数にテキスト文字列を与え、get(x、y)座標を返したいと思います。

Pyautoguiでこれを実行できるかどうかわかりません。

環境:クローム/ OS X

EDIT: 私はテキストを検索するために、このライブラリにlocateOnScreen()関数を使用することができる場合、私は疑問に思って、それは画像だけのためだと思われますか? http://pyautogui.readthedocs.io/en/latest/screenshot.html#the-locate-functions

+0

を[尋ねる]をお読みください。試したコードとエラーメッセージなどの実行結果を提供してください。 – JeffC

答えて

2

要素のx座標とy座標の辞書を返すプロパティ.locationを有するウェブ要素。上記のコード

driver = webdriver.Chrome('/path/to/chromedriver') 
elem = driver.find_element_by_xpath('//xpath_to_the_element') 
loc = elem.location 
print(loc) 

のようなものが返されます:

{'x' : 123, 'y' : 234} 
+0

私は実際にfind_element_by_というセレンの関数を調べていました。私はdriver.get( "www.abc.com")を実行して新しいクロムウィンドウを起動しなければならないようでした。既に開いているクロムウィンドウでfind_element_by_関数を呼び出す方法はありますか? – rocketfinger

+0

@rocketfinger Seleniumは、Webdriverを使用せずに、ユーザが開いたブラウザのハンドルを取得することはできません。 – Leva7

+0

[Open Browser](http://robotframework.org/Selenium2Library)で他のウィンドウを開くとどうなりますか? /Selenium2Library.html#Open%20Browser)キーワードはSelenium2Libraryにありますか?私。それはwebdriverによって開かれていますが、そのpythonスクリプトでは開かれていません。 – rocketfinger

関連する問題