selenium 獲取文本


共有2種方式獲取元素文本,各有優缺點

1、ele.text方式

優點是:書寫簡單

缺點是:當頁面很大,有一部分頁面會展示不出來,需要通過拖動滾動條才能查看。對這部分頁面的元素,使用ele.text查看,獲取不到元素文本。

舉例:

申請號是第1列,頁面展示出來了,通過is_displayed()方法查看結果為True,可以通過ele.text方式獲取元素文本:申請號

申請號是第6列,頁面展示出來了,通過is_displayed()方法查看結果為True,可以通過ele.text方式獲取元素文本:審批流程

申請號是第7列,頁面展示出來了,通過is_displayed()方法查看結果為True,可以通過ele.text方式獲取元素文本:文件名

文件總個數是第8列,頁面沒有展示,通過is_displayed()方法查看結果為False,通過ele.text方式獲取到元素文本為空:""

self.table_title_cells[0].text
'申請號'

self.table_title_cells[7].text
''
self.table_title_cells[6].text
'文件名'
self.table_title_cells[5].text
'審批流程'

self.table_title_cells[7].is_displayed()
False
self.table_title_cells[6].is_displayed()
True
self.table_title_cells[5].is_displayed()
True

 

 

 2、通過get_attribute()方法獲取元素的文本信息

  在獲取隱藏元素的文本信息時,可以使用get_attribute()方法,通過textContent、innerText、innerHTML等屬性獲取。

  innerHTML會返回元素內部的HTML,包含所有的HTML標簽。

  textContent和innerText置灰得到文本內容,而不會包含HTML標簽。textContent是W3C兼容的文字內容屬性,但是IE不支持;innerText不是W3C DOM的指定內容,但是FireFox不支持。

2.1、get_attribute(“textContent”)

優點:可以獲取隱藏元素的文本

缺點:IE不支持;獲取有些元素的文本時,結果中帶有空字符串;

舉例:

self.table_title_cells[7].is_displayed()
False
self.table_title_cells[7].get_attribute("textContent")
'文件總個數'

self.table_body_cells[2][0].text '166' self.table_body_cells[2][0].get_attribute("textContent") '166 '

2.2、get_attribute("innerText")

優點:可以獲取隱藏元素的文本

缺點:FireFox不支持;

舉例:

self.table_title_cells[7].is_displayed()
False
self.table_title_cells[7].get_attribute("innerText")
'文件總個數'

self.table_body_cells[2][0].text
'166'
self.table_body_cells[2][0].get_attribute("innerText")
'166'

 

參考鏈接:

https://www.cnblogs.com/chen/p/10931424.html


免責聲明!

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



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