Проблема с __VIEWSTATE, __EVENTVALIDATION, __EVENTTARGET и scrapy & splash - PullRequest
0 голосов
/ 24 октября 2018

Как мне справиться с __VIEWSTATE, __EVENTVALIDATION, __EVENTTARGET с помощью scrapy / splash?

Я пытался с

return FormRequest.from_response(response,
    [...]
    '__VIEWSTATE': response.css(
    'input#__VIEWSTATE::attr(value)').extract_first(),

Но это не работает.

1 Ответ

0 голосов
/ 27 октября 2018

Вам нужно будет использовать dict в качестве аргумента formdata ключевого слова.

(я бы также рекомендовал сначала извлекать переменные для удобства чтения)

def parse(self, response):
    vs = response.css('input#__VIEWSTATE::attr(value)').extract_first()
    ev = # another extraction
    et = # a third extraction
    return scrapy.FormRequest.from_response(
        response,
        formdata={'__VIEWSTATE': vs,
            '__EVENTVALIDATION': ev,
            '__EVENTTARGET': et },
        callback=self.your_callback
    )

См. этот документ для получения дополнительной информации.

...