revenues_in = MapCompose(MatchEndDate(float))
revenues_out = Compose(imd_filter_member, imd_mult, imd_max)
def add_xpath(self, field_name, xpath, *processors, **kw):
values = self._get_values(xpath, **kw)
self.add_value(field_name, values, *processors, **kw)
return len(self._values[field_name])
def add_xpaths(self, name, paths):
for path in paths:
match_count = self.add_xpath(name, path)
if match_count > 0:
return match_count
return 0
self.add_xpaths('revenues', [
'//us-gaap:Revenues',
'//us-gaap:SalesRevenueNet',
'//us-gaap:SalesRevenueGoodsNet',
'//us-gaap:SalesRevenueServicesNet',
'//us-gaap:RealEstateRevenueNet',
'//*[local-name()="NetRevenuesIncludingNetInterestIncome"]',
'//*[contains(local-name(), "TotalRevenues") and contains(local-name(), "After")]',
'//*[contains(local-name(), "TotalRevenues")]',
'//*[local-name()="InterestAndDividendIncomeOperating" or local-name()="NoninterestIncome"]',
'//*[contains(local-name(), "Revenue")]'
])
目前,代码只会输出xpath列表中的第一个匹配项。我希望它返回匹配的所有xpath的最大值。请告知。你知道吗
这当然是我认为相关的代码的一部分。如果您想查看其他代码,请访问https://github.com/eliangcs/pystock-crawler/tree/master/pystock_crawler
谢谢你的时间和帮助!你知道吗
这不起作用,因为add\u xpaths函数在循环的每次传递结束时都返回一个值。这将导致循环在第一次运行后退出。相反,您需要将计数存储在一个变量中,并在遍历整个数据结构时返回它。你知道吗
而不是这样:
试试这个:
相关问题 更多 >
编程相关推荐