2017-03-22 1 views
1

Ich frage mich, ob es einen Unterschied macht, Locators einzugrenzen, und auch, ob es effizienter ist, weil die Abfrage nicht mehrmals gemacht wird, um das div zu finden?Selen, Python, ist es möglich, einen Locator einzugrenzen?

Zum Beispiel ist es möglich, eine find_element_by_id auf dem Eltern-Div-Tag zu tun, und speichern Sie das als eine Variable. Dann diese Variable verwenden, um rufen find_element_by_xpath (und damit eine Verkürzung all XPath-Abfragen?

zB

d = find_element_by_id('myid') 
e = d.find_element_by_xpath('//img') 

, die den img-Tag in der myid div bekommen würde?

Antwort

1

Ja, es ist möglich, aber Sie sollte festgelegt werden, dass Sie nicht von der Wurzel html Elemente der Suche zu starten benötigen

e = d.find_element_by_xpath('//img') 

aber von dem Mutterelement, das ist d in Ihrem Fall:

e = d.find_element_by_xpath('.//img') 

Hinweis der Punkt . vor //

+0

ahaa, schönen Dank Andersson :). Ich schätze, es ist auch möglich, eine for-Schleife auf dem div-Tag auszuführen, also alle img-Tags in mehrere divs zu bekommen? –

+0

Ja, es ist auch möglich, alle Bilder für jedes 'div' auf diese Weise zu bekommen – Andersson

+0

Du bist ein Juwel Andersson, vielen Dank :) –

Verwandte Themen