擅长:python、mysql、java
<p>老实说,使用for循环是正确的方法,但您可以在管道上解决它:</p>
<pre><code>from scrapy.http import Response
from gumtree1.items import GumtreeItems, CustomItem
from scrapy.exceptions import DropItem
class CustomPipeline(object):
def __init__(self, crawler):
self.crawler = crawler
@classmethod
def from_crawler(cls, crawler):
return cls(crawler)
def process_item(self, item, spider):
if isinstance(item, GumtreeItems):
for i, jobs in enumerate(item['jobs']):
self.crawler.engine.scraper._process_spidermw_output(
CustomItem(jobs=jobs, location=item['location'][i]), None, Response(''), spider)
raise DropItem("main item dropped")
return item
</code></pre>
<p>同时添加自定义项:</p>
^{pr2}$
<p>希望这有帮助,再次我认为你应该使用循环。在</p>