在Scrapy蜘蛛中无需请求即可产出物品

问题描述 投票:0回答:1

我希望 Scrapy 蜘蛛在不先发出请求的情况下生成一个项目。我需要以下功能,但不需要向 example.com 请求。

class TestSpider:
    name = "test"

    def __init__(self, item, *args, **kwargs):
        self.item = item

    def start_requests(self):
        yield scrapy.Request('https://example.com/', callback=self.parse)

    def parse(self, response):
        yield self.item

我尝试直接从

start_requests
生成项目,但是 Scrapy 期望它返回
scrapy.Request
对象的可迭代对象。

直接从构造函数产生当然也是行不通的,因为构造函数必须返回

None

python-3.x scrapy
1个回答
0
投票

我有同样的问题,我正在尝试在 scrapy 项目中使用我自己的 http 客户端实现,我尝试在循环中生成 scrapy.items 并且它不断尝试访问通常在 scrapy.Request 中找到的属性 dont_filter

© www.soinside.com 2019 - 2024. All rights reserved.