繁体   English   中英

通过 xpath 和 Selenium 获取元素

[英]Get element by xpath with Selenium

对于此 html 结构,我需要使用 selenium 通过 xpath 获取 Id 信息:

<div class="content">

<ul>
                                                                                                                        <li class="info-holder">
<h3 style=""><a href="#" style="">Information</a></h3>
<div class="tabela-lista-valor">
<p class="outer tabela-lista-item"> Id </p>
<p class="inner" style="font-family: 'Open Sans', Arial, Helvetica, sans-serif !important;margin-bottom: 0px;padding: 8px 8px;">1</p>
</ul>
</div>

但是使用 selenium 来检索我收到此消息的数据:

TypeError: 'WebElement' object is not subscriptable

这是我的代码:

for z in range(2):
    id_test = navegador.find_element(By.XPATH,"(//p[contains(concat(' ', normalize-space(@class), ' '),' inner ')])[1]")
    for i in range(1,500): 
        dados_temporarios = {'ID': id_test[i].text}
        dados.append(dados_temporarios)
    navegador.find_element(By.XPATH, "//a[contains(text(),'next')]").click()

问题是您使用find_element方法,因为后记您尝试访问变量的索引,当它是长度为单个元素时。

您正在寻找的是find_elements命令,它将返回一个列表,您可以从中找到 select 单个元素。 有关详细信息,请参阅 此处有关此主题的 Selenium 文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM