擅长:python、mysql、java
<p>因为scrapy的<a href="https://doc.scrapy.org/en/latest/topics/architecture.html#event-driven-networking" rel="nofollow noreferrer">asynchronous nature</a>,所以在spider对象上存储第二次回调的结果并打印它不能保证正常工作。相反,您可以尝试<a href="https://doc.scrapy.org/en/latest/topics/request-response.html#topics-request-response-ref-request-callback-arguments" rel="nofollow noreferrer">passing additional data to callback functions</a>,类似于:</p>
<pre><code>def parse(self, response):
for i in range(0, 2):
item = ... # extract some information
url = ... # construct URL
yield SplashFormRequest(url, callback=self.parse2, meta={'item': item})
def parse2(self, response):
item = response.meta['item'] # get data from previous parsing method
item.update({'key': 'value'}) # add more information
print item # do something with the "complete" item
return item
</code></pre>