gpt4 book ai didi

python - Selenium:获取列表元素的内容作为字符串

转载 作者:太空宇宙 更新时间:2023-11-04 03:22:52 30 4
gpt4 key购买 nike

我的测试网络服务器返回以下 HTML:

<ul class="dropdown-menu" id="dropdown-menu-id">
<li><a href="">Pumpkins and Chocolate</a></li>
<li><a href="">Click to Nowhere</a></li>
</ul>

我正在尝试使用 Selenium 打印 <li> 的内容元素作为字符串。例如:

'<a href="">Pumpkins and Chocolate</a>'
'<a href="">Click to Nowhere</a>'

我尝试了以下方法:

from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://localhost:8000')
dropdown_list = self.browser.find_element_by_id('dropdown-menu-id')
items = dropdown_list.find_elements_by_tag_name("li")
for item in items:
print "Item text: >%s<" % item.text

但是,这会打印出 2 个空字符串。我猜这可能是由于 <a>需要直接访问的标签。

打印<li>内容的正确方法是什么?作为字符串?

最佳答案

您的代码给出以下输出:

Item text: >Pumpkins and Chocolate<
Item text: >Click to Nowhere<

如果你想获取 innerHTML,请将 item.text 更改为 item.get_attribute("innerHTML"):

Item text: ><a href="">Pumpkins and Chocolate</a><
Item text: ><a href="">Click to Nowhere</a><

你得到空字符串的原因是因为网络元素不可见并且item.text在这种情况下返回空字符串。

关于python - Selenium:获取列表元素的内容作为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34123378/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com