Py学习  »  Python

如何使用python selenium webdriver在li中获取跨度的值?

MuCh • 6 年前 • 1695 次点击  

我正在尝试从我的HTML页面(采用此格式)获取SCN的值-

<html>
    <body>
        <div class="hs-customerdata hs-customerdata-pvalues">
            <ul>
                <li class="hs-attribute">
                    <map-hs-label-value map-hs-lv-label="ACCOUNTINFO.SCN" map-hs-lv-value="89862530">
                    <span class="hs-attribute-label" hs-context-data="" translate="" hs-channel="abcd" hs-device="desktop">SCN:</span>
                    <span ng-bind-html="value | noValue | translate : params" class="hs-attribute-value" context-data="" map-v-key="89862530" map-v-params="" hs-channel="abcd" hs-device="desktop">
                    89862530</span>
                    </map-hs-label-value>
                </li>
            </ul>
        </div>
    </body>
</html>

到目前为止,我尝试了不同的方法,但无法达到范围并获得SCN值。

我试过了-

scn = self.driver.find_elements_by_xpath(".//span[@class = 'hs-attribute-value']") 

这会导致elementNotFound错误。我最近到的是-

div_element = self.driver.find_element_by_xpath('//div[@class="hs-customerdata hs-customerdata-personal"]/ul/li[@class="hs-attribute"]')

当我这样做的时候-

print(div_element.get_attribute('innerHTML')) 

我明白了-

<map-hs-label-value map-hs-lv-label="ACCOUNTINFO.SCN" map-hs-lv-value="{{::customerData.details.scn}}"></map-hs-label-value>

但我不能超越这一点。我刚开始使用WebDriver,无法理解这一点。任何帮助都将不胜感激。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38143
文章 [ 2 ]  |  最新文章 6 年前