python+Selenium——web自動化之通過文本信息定比特元素

覓遠 2022-01-07 07:07:57 阅读数:281

python+selenium python selenium web 文本

目錄

使用文本內容定比特的原因

精確匹配:text()方法

模糊匹配:contains()


使用文本內容定比特的原因

在元素定比特過程中有的元素只有標簽沒有屬性,而只是具有文本信息,這時在定比特的時候需要通過文本內容來定比特。

定比特的方式:通過xpath定比特方法定比特,文本內容的選擇形式有兩種方法,精確匹配和模糊匹配

如訪問:控制臺 · 天氣API

定比特如圖元素是否存在

精確匹配:text()方法

from selenium import webdriver
import time
wd = webdriver.Chrome()
wd.maximize_window()
time.sleep(0.5)
wd.get('http://www.tianqiapi.com/user/login')
text1 = wd.find_element_by_xpath("//small[text()]").text
print(text1)
wd.quit()

模糊匹配:contains()

用來匹配包含某段文本內容的元素,例如匹配包含登陸文本內容的文本元素對象

//div[contains(text(),"登陸")],注意:文本內容使用模糊匹配的時候需要用雙引號包裹,否則無法匹配到任何元素

 

from selenium import webdriver
import time
wd = webdriver.Chrome()
wd.maximize_window()
time.sleep(0.5)
wd.get('http://www.tianqiapi.com/user/login')
text_logs = wd.find_elements_by_xpath('//div[contains(text(),"登錄")]')
for log in text_logs:
print(log.text)
wd.quit()

兩種方法:

  • '//div[contains(text(),"")]'
  • '//div[contains(string(),"")]'
版权声明:本文为[覓遠]所创,转载请带上原文链接,感谢。 https://gsmany.com/2022/01/202201070707566265.html