Я хочу использовать тот же сеанс для доступа к некоторым URL-адресам. После прочтения документов о cookie мне нравится следующее:scrapy используют ту же сессию для доступа к веб-сайту
def start_requests(self):
yield scrapy.Request(self.getUrl, meta={'cookiejar': 0}, callback=self.downloadPic)
def downloadPic(self, response):
yield scrapy.Request(self.vcodeUrl, meta={'cookiejar': response.meta['cookiejar']}, callback=self.getAndHandlePic
def getAndHandlePic(self, response):
# handle picture, not the point here
pic = self.handlePic(response.body)
yield FormRequest(self.postUrl, formdata={'a':a, 'pic':pic}, meta={'cookiejar': response.meta['cookiejar']}, callback=self.parse)
def parse(self, response):
# do process source code
Может кто-нибудь объяснить, почему это не работает?
Вы можете проверить, включен ли файл cookie в файле settings.py (HTTPCACHE_ENABLED = True) – MrPandav
@MrPandav Я сделал это, но не работает. –
параметр для cookie будет COOKIES_ENABLED = True (который включен по умолчанию) также, вы пытались использовать COOKIES_DEBUG = True и посмотреть, используется ли тот же сеанс cookie для всех http://doc.scrapy.org/en/latest/ темы/загрузчик-middleware.html? изюминка = печенье # печенье-отладка – MrPandav