Tôi mới vào xpath, cố gắng để có được giá trị của "giá trị" sử dụng xpath:Python Selenium: Tìm đối tượng thuộc tính sử dụng xpath
<input type="submit" value=" Search " class="long searchButton" style="width:190px !important;">
trong khi nó rất dễ dàng để tìm phần tử bằng cách "type="submit"
như:
browser.find_elements_by_xpath("//*[@type='submit']")
tôi đã không thể tìm ra cách để có được những giá trị tôi cần, như:
browser.find_elements_by_xpath("//*[@type='submit']/@value")
hơi dự kiến đưa ra một lỗi:
expression "//*[@type=\'submit\']/@value" is: [object Attr]. It should be an element
Bất kỳ ý tưởng nào để giải quyết vấn đề này?
EDIT: Đường dẫn là chính xác nhưng nó "trả về" thuộc tính obj và vì nó không phải là một phần tử, nó không được phép. Tôi không thể tìm thấy một phương thức như get_attr_by_xpath() hoặc bất kỳ thứ gì tương tự.
có lẽ đây là một gợi ý ngớ ngẩn nhưng không sử dụng dây liệu sửa chữa: 'r "// * [@ type = 'submit']/@ giá trị" '? –
bạn đã thử một cái gì đó như 'driver.find_element_by_xpath (" // a [contains (text(), 'Search')] "). Click()' – avasal
Khi tôi thử xpath của bạn với lxml nó hoạt động tốt. Tôi đã thử 'lxml.html.fromstring (s) .xpath (" // * [@ type = 'submit']/@ value ")' và o/p là '['Tìm kiếm']' – RanRag