【发布时间】:2021-09-20 11:49:44
【问题描述】:
我正在尝试使用 XPATH 函数“count”来计算 HTML 元素具有的子节点数。
elements = request.html.xpath('//*[@class="some class"]')
for e in elements:
print(e.xpath('count(*)')
我正在使用 Requests-HTML 库,所以 elements 中的每个 e 都是一个 Element 类实例。
但是,当我运行上面的代码时,收到一个错误:
TypeError: 'float' object is not iterable
有什么想法吗?
编辑:
扩展代码:
from requests_html import HTML
from requests_html import HTMLSession
session = HTMLSession()
r = session.get('https://www.python.org/')
element = r.html.xpath('//*[@id="about"]')
for e in element:
print(e.xpath('count(*)'))
【问题讨论】:
-
语法错误是怎么回事?它返回具有指定类的所有元素。
-
是的,你是对的。我在这里写代码时犯了这个错误,但在实际代码中是正确的。
-
我建议您创建一个minimal reproducible example,以便实际上可以复制您的代码并重现您的问题。
-
我添加了一个扩展代码,让我知道它是怎么回事。
标签: python xpath python-requests python-requests-html