为了账号安全,请及时绑定邮箱和手机立即绑定

需要帮助解析 html 元素并执行脚本没有工作

需要帮助解析 html 元素并执行脚本没有工作

有只小跳蛙 2022-01-05 20:33:31
<li tabindex="0" role="tab" aria-selected="false">   <a href="#gift-cards" class="leftnav-links kas-leftnav-links" data-section="gift-cards" data-ajaxurl="/wallet/my_wallet.jsp">                            <span class="width200 kas-gift-cards-tab">Gift Cards</span>     <span class="count kas-count">info</span>   </a></li>我有这样一个 html 代码,它在页面上复制了大约 5 次,其中只有 2 个块包含我需要的信息。他们的课是一样的,我不知道该怎么办。另外,Firefox 中的 execute_script 对我不起作用。html_list = driver.find_element_by_id("rewards-contents")                items = html_list.find_element_by_tag_name("li")                for item in items:                    text = item.text                    print(text)我试图在 python 上启动它,但没有任何明智的结果。我希望脚本显示来自所有 5 个块的信息。
查看完整描述

2 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

要获取所有元素,请使用find_elements而不是find_element. 您的代码应如下所示:


html_list = driver.find_element_by_id("rewards-contents")

items = html_list.find_elements_by_tag_name("li")

for item in items:

    print(item.text)

要按span元素获取文本:


html_list = driver.find_elements_by_css_selector("#rewards-contents li")

items = html_list.find_elements_by_tag_name("span")

for item in items:

    print(item.text)


查看完整回答
反对 回复 2022-01-05
?
手掌心

TA贡献1942条经验 获得超3个赞

我通过以下方式解决了我的问题:


`info = []

time.sleep(2)

htmllist = driver.find_element_by_class_name("rewards-contents")

items = htmllist.find_elements_by_css_selector(".kas-count")

for item in items:

info.append(item.text)

print(item.text)

print(info)`


查看完整回答
反对 回复 2022-01-05
  • 2 回答
  • 0 关注
  • 116 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信