1. 程式人生 > 程式設計 >Python Selenium XPath根據文字內容查詢元素的方法

Python Selenium XPath根據文字內容查詢元素的方法

問題現象

元素的屬性中沒有id、name;雖然有class,但比較大眾化,且位置也不固定;例如:頁碼中的下一頁;那該如何找到該元素?

<a class="paging">上一頁</div>
<a class="paging">1</div>
<a class="paging">2</div>
<a class="paging">下一頁</div>

解決辦法

text()

text() 函式文字定位

page_next = driver.find_element(By.XPATH,'//a[text()="下一頁")]')

contain()

contains 匹配一個屬性值中包含的字串 – 模糊定位
通過元素文字內容模糊搜尋來定位元素;

page_next = driver.find_element(By.XPATH,'//a[contains(text(),"下一頁")]')
page_next = driver.find_element(By.XPATH,'//a[contains(string(),"下一頁")]')

Python通過xpath查詢元素通過selenium讀取元素資訊

#coding:utf-8
from selenium import webdriver
import time
url ='http://www.baidu.com'
driver = webdriver.Chrome()
driver.get(url)
time.sleep(1)
e=driver.find_element_by_xpath('//*[@id="lg"]/img')
print e
print e.text
print e.id
print e.tag_name
print type(e)
time.sleep(1)
driver.quit()

e.text 讀取元素內容
e.tag_name 讀取元素標籤名

到此這篇關於Python Selenium XPath根據文字內容查詢元素的方法的文章就介紹到這了,更多相關Python Selenium XPath容查詢元素內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!