在selenium中使用xpath只有一行

我想要页面上的所有数据,但是用xpath取下来只有一条!是我对xpath有误解吗?

clipboard.png
girlname=driver.find_element_by_xpath("//div[@id='zoom']/p")
print(type(girlname))
girlname=girlname.text
print(type(girlname))
print(girlname)

clipboard.png

只有这一条,真让我百思不得其解,望前辈指教,感谢

阅读 2.6k
1 个回答

girlname 应该是集合 可以断点查看具体内容是否是多个, 当直接girlname.text 的时候只对第一个元素有效 ,下列是lxml的测试用例

from lxml import etree

html = """<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div>
    <p>1</p>
    <p>2</p>
    <p>3</p>
    <p>4</p>
    <p>5</p>
</div>
</body>
</html>"""

html = etree.HTML(html)

a = html.xpath("//div/p")

for i in a:
    print(i.text)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题