1

我已经开始了一个抓取项目,我有一个小问题ItemLoader

假设我ItemLoader在刮刀中有一些:

l = ScraperProductLoader(item=ScraperProduct(), selector=node)
l.add_xpath('sku', 'id/text()')

我想根据sku我提供的向项目加载器添加一个 URL:

l.add_value('url', '?????')

...但是,根据文档,我没有看到一个明确的方法来做到这一点。

我考虑过的选项:

  • 输入处理器:添加一个字符串,并sku以某种方式将其作为上下文传递
  • 单独处理:不使用项目加载器创建 URL

如何使用加载的数据在 中添加新值ItemLoader

4

1 回答 1

2

您可以使用get_output_value()方法:

获取输出值(字段名称)

返回使用输出处理器为给定字段解析的收集值。此方法根本不填充或修改项目。

l.add_value('url', 'http://domain.com/' + l.get_output_value('scu'))
于 2014-05-28T14:54:29.803 回答