Cookies 软饼干

Cookies 软饼干,cookies,scrapy,Cookies,Scrapy,我可以用scrapy创建cookie,但无法修改现有cookie。 在我工作的电子商务网站中,这个cookie处理邮政编码,每个页面都使用邮政编码来修改产品属性。我可以使用selenium修改邮政编码,刮取每页,但刮取过程太慢。我只想使用scrapy,修改这个请求/响应邮政编码cookie 我可以使用此代码根据请求创建cookie 在SETTINGS.PY中 COOKIES_ENABLED=真 在spider.py中 生成scrapy.Request(response.urljoin(url)、

我可以用scrapy创建cookie,但无法修改现有cookie。 在我工作的电子商务网站中,这个cookie处理邮政编码,每个页面都使用邮政编码来修改产品属性。我可以使用selenium修改邮政编码,刮取每页,但刮取过程太慢。我只想使用scrapy,修改这个请求/响应邮政编码cookie

我可以使用此代码根据请求创建cookie

在SETTINGS.PY中 COOKIES_ENABLED=真

在spider.py中 生成scrapy.Request(response.urljoin(url)、self.parsePage、cookies={'cp':codpost})

我使用以下方法获取cookies列表: cookies=response.headers.getlist(“设置Cookie”)

我在每页上得到的相关结果是: […,b'cp=28029;Expires=Sun,2032年2月29日07:58:44 GMT;Path=/',…]


它看起来不像是一对键/值。如何修改此cookie?有什么建议吗?

我认为您不需要手动修改cookies,您可能可以使用

您可以为不同的邮政编码生成多个请求,并在每个请求中包含不同的cookiejar,这样Scrapy将为每个请求管理不同的会话

for code in postal_code:
    yield Request(url, meta={'cookiejar': code}, callback=self.callback_func)

这是一个简单的示例,只是为了说明如何在请求中传递cookiejar。请记住,
code
表示的值对于您需要的每个不同会话都必须不同。

非常感谢您的帮助和指导。我对cookiejar一无所知。你能再详细说明一下,或者指导我去哪里学习cookiejar吗?无论如何,我会从我这边调查,看看我是否能解决我的问题。为了澄清我的问题:当我运行一个spider会话时,我只对一个codpost感兴趣,不需要在同一个会话中从多个codpost发出请求。我打算将codpost作为参数传递给spider,然后运行此codpost