如何在使用scrapy和xpath时使用count()

1 投票
2 回答
4928 浏览
提问于 2025-04-18 00:18

我正在使用scrapy来处理一些解析工作。

def parse_2(self,response):
   sel = Selector(response)
   sites = sel.xpath('//div[@class="container"]')
   courses = []
   for site in sites:
       course = CourseItem()
       course['rating'] = site.xpath("count(//div[@class='span5'])")
       ……

我想在xpath中使用count函数来计算一些节点的数量,但出现了一些问题。比如异常:AttributeError:'Selector'对象没有'decode'这个属性

在这里输入图片描述

2 个回答

0

你可以试试这个:

length = len(site.xpath("//div[@class='span5']").getall())
7

你可以直接使用Python里的计数函数len:

count = len(site.xpath("//div[@class='span5']"))

希望这能帮到你哦;)

祝好。

撰写回答