Sono nuovo di XPath, cercando di ottenere il valore del "valore" utilizzando XPath:Python Selenio: trovare l'oggetto attributi utilizzando XPath
<input type="submit" value=" Search " class="long searchButton" style="width:190px !important;">
mentre è facile da trovare elemento da "type="submit"
come:
browser.find_elements_by_xpath("//*[@type='submit']")
non sono stato in grado di capire come ottenere i valori di cui ho bisogno, come:
browser.find_elements_by_xpath("//*[@type='submit']/@value")
un po ' prevede un errore:
expression "//*[@type=\'submit\']/@value" is: [object Attr]. It should be an element
Qualche idea su come risolvere questo problema?
MODIFICA: xpath è corretto, ma "restituisce" un attributo obj e poiché non è un elemento, non è consentito. Non riesco a trovare un metodo come get_attr_by_xpath() o qualcosa di simile.
forse questo è un suggerimento stupido, ma si fa utilizzando le stringhe prime FIX: 'r "// * [@ type = 'submit'] valore/@" '? –
hai provato qualcosa come 'driver.find_element_by_xpath (" // a [contiene (text(), 'Search')] "). Click()' – avasal
Quando ho provato xpath con lxml ha funzionato bene. Ho provato 'lxml.html.fromstring (s) .xpath (" // * [@ type = 'submit']/@ value ")' e l'o/p è '['Cerca']' – RanRag