Scrapy: Follow link to get additional Item data?

前端 未结 3 778
无人共我
无人共我 2020-11-29 00:32

I don\'t have a specific code issue I\'m just not sure how to approach the following problem logistically with the Scrapy framework:

The structure of the data I want

3条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-11-29 01:07

    You can also use Python functools.partial to pass an item or any other serializable data via additional arguments to the next Scrapy callback.

    Something like:

    import functools
    
    # Inside your Spider class:
    
    def parse(self, response):
      # ...
      # Process the first response here, populate item and next_url.
      # ...
      callback = functools.partial(self.parse_next, item, someotherarg)
      return Request(next_url, callback=callback)
    
    def parse_next(self, item, someotherarg, response):
      # ...
      # Process the second response here.
      # ...
      return item
    

提交回复
热议问题