启用Frontera中间件的Scrapy crawler会从响应对象中删除referer头

2024-09-28 20:53:48 发布

您现在位置:Python中文网/ 问答频道 /正文

当我在scrapy中启用以下frontera中间件时

我丢失了所有response对象中的所有referer头

有没有什么可以保留推荐人的?在

当我删除以下行时,referer可用,但我需要启用这些frontera中间件

SPIDER_MIDDLEWARES.update({
    'frontera.contrib.scrapy.middlewares.schedulers.SchedulerSpiderMiddleware': 1000,
})


DOWNLOADER_MIDDLEWARES.update({
    'frontera.contrib.scrapy.middlewares.schedulers.SchedulerDownloaderMiddleware': 1000,
})

SCHEDULER = 'frontera.contrib.scrapy.schedulers.frontier.FronteraScheduler'

另外,启用了referermiddleware,当scray启动时,我可以在调试日志中看到它



编辑:这是我的整个配置文件内容

^{pr2}$

Tags: 中间件对象responseupdatecontribspiderscrapyfrontera
1条回答
网友
1楼 · 发布于 2024-09-28 20:53:48

DupeFilter不可能是真的。 你可以像

DUPEFILTER_CLASS = "scrapy.dupefilters.BaseDupeFilter.RFPDupeFilter"

如果您想在不使用dupe filter的情况下执行请求,可以将dont_filter=Truekwargs添加到scrapy.Request

相关问题 更多 >