Soy nuevo en XPath, tratando de obtener el valor del "valor" usando XPath:Python Selenio: Encuentra atributos de objeto utilizando XPath
<input type="submit" value=" Search " class="long searchButton" style="width:190px !important;">
si bien es fácil de encontrar elemento por "type="submit"
como:
browser.find_elements_by_xpath("//*[@type='submit']")
no he sido capaz de encontrar la manera de obtener los valores que necesito, como:
browser.find_elements_by_xpath("//*[@type='submit']/@value")
un tanto se espera que da un error:
expression "//*[@type=\'submit\']/@value" is: [object Attr]. It should be an element
¿Alguna idea de cómo solucionar esto?
EDITAR: El xpath es correcto, pero "devuelve" un atributo obj y como no es un elemento, no está permitido. No puedo encontrar un método como get_attr_by_xpath(), o algo similar.
tal vez esta es una sugerencia tonta pero ¿el uso de cadenas primas REVISIÓN: 'r "// * [@ type = 'submit'] Valor/@" ¿? –
has probado algo como 'driver.find_element_by_xpath (" // a [contains (text(), 'Search')] "). Click()' – avasal
Cuando probé tu xpath con lxml funcionó bien. Intenté 'lxml.html.fromstring (s) .xpath (" // * [@ type = 'submit']/@ value ")' y el o/p es '['Search']' – RanRag