【发布时间】:2020-08-08 07:01:15
【问题描述】:
我想提取 class badge pull-right bg-green r-r 中的 span 文本。但是,class badge pull-right bg-green r-r 可能并不总是可用。具体来说,当 class badge pull-right bg-green r-r 可用时,我将设置元素等于 Hello World,当 class badge pull-right bg-green r-r 不可用时,我将设置元素等于 No Exist。
通过调整OP1的代码,实现了以下代码以适应当前的需求。
if len( self.browser.find_element_by_xpath('.//span[@class = "badge pull-right bg-green m-l-5 m-r-5"]') ) > 0 :
element = \
self.browser.find_elements_by_xpath( './/span[@class = "badge pull-right bg-green m-l-5 m-r-5"]' )[ 0 ].text
但是,我收到以下错误
TypeError: 'WebElement' 类型的对象没有 len()
提前感谢您的任何见解。
为了方便排查,下面给出了网站完整的外部HTML框架
<li id="tcl_SiringMenu1_sbmenu" class="has-sub">
<a href="javascript:;">
<b class="caret pull-right"></b>
<i class=" tcl tcl -fw tcl -myr"></i>
<span>Ruang PeluangGame <span class="badge pull-right bg-gray r-r">Hello World</span> </span>
</a>
<ul class="sub-menu" style="display: none;">
<li id="tcl_SiringMenu1_AmbilDuit">
<a href="/pguna/ambilduit/permainan.aspx">
Permainx LODR<span class="badge pull-right bg-green r-r">Hello World</span></a>
</li>
</ul>
</li>
【问题讨论】: