selenium3+python自動化14-獲取元素屬性


前言

本篇介紹幾種常見的獲取元素屬性方法。比如:獲取某個頁面的title、某個元素的文本值、某個元素的標簽、某個元素的屬性值、瀏覽器的名字等

一、獲取元素屬性的方法

1.獲取瀏覽器名字:driver.name

2.獲取頁面title:driver.title

 3.獲取元素的文本:element.text,element表示定位到的元素

如下圖這種顯示在頁面上的文本信息,可以直接獲取到。

 4.獲取元素的標簽:element.tag_name,element表示定位到的元素。

以獲取百度輸入框的標簽屬性為例

 5.獲取元素的屬性值:get_attribute("屬性"),這里的參數可以是class、name等任意屬性。

以百度輸入框輸入關鍵字匹配后,既打印出輸入的關鍵字又打印出聯想詞為例。

第一步:以上圖為例,聯想詞都有一個共同的class屬性,用find_elemnts()的方法定位到所有的聯想詞

第二步:用get_attribute()方法獲取到“data-key”屬性的值

 

二、參考代碼

 1 from selenium import webdriver
 2 from time import sleep
 3 driver=webdriver.Chrome()
 4 driver.get('https://www.baidu.com/')
 5 driver.implicitly_wait(10)
 6 # #獲取瀏覽器名字
 7 # print(driver.name)
 8 # #獲取頁面title
 9 # print(driver.title)
10 # #獲取元素的文本
11 # text=driver.find_element_by_xpath('//*[@id="qrcode"]/div/div[2]/p[2]').text
12 # print(text)
13 # #獲取元素的標簽
14 # tag=driver.find_element_by_id('kw').tag_name
15 # print(tag)
16 driver.find_element_by_id('kw').send_keys('Python')
17 #獲取輸入框內容
18 value=driver.find_element_by_id('kw').get_attribute('value')
19 print(value)
20 #獲取聯想詞
21 elements=driver.find_elements_by_class_name('bdsug-overflow')
22 for i in elements:
23     print(i.get_attribute('data-key'))
24 driver.quit()

參考博客:https://www.cnblogs.com/yoyoketang/p/6481632.html    https://www.cnblogs.com/yoyoketang/p/6486927.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM