Очистка веб-сайта ASP.net с использованием ошибки входа Scrapy - PullRequest
0 голосов
/ 28 сентября 2018

Я использую Scrapy для очистки данных с сайта, который использует ASP.NET.Когда я не вошел в систему, я могу очистить все данные, которые находятся в свободном доступе.Однако для запатентованного материала мне нужно войти в систему. Когда я вызываю FormRequest.from_response (), я не могу войти в систему.Любая идея, что мне не хватает?Вот мой паук:

def parse_login(self, response):

    vs = response.xpath('//*[@name="__VIEWSTATE"]/@value').extract_first()
    vsg = response.xpath('//*[@name="__VIEWSTATEGENERATOR"]/@value').extract_first()
    ev = response.xpath('//*[@name="__EVENTVALIDATION"]/@value').extract_first()
    return [scrapy.FormRequest.from_response(response=response,method='POST',formdata={
                                                # '__EVENTTARGET':'',
                                                # '__EVENTARGUMENT':'',
                                                #'__VIEWSTATE':vs,
                                                'ctl00$cph_main$txt_email:':login_user,
                                                'ctl00$cph_main$txt_pass':login_password,
                                                #'__VIEWSTATEGENERATOR':vsg,
                                                #'__EVENTVALIDATION':'',
                                                },callback=self.start_crawl)]

Вот данные формы после «проверки» страницы входа через «вкладку сети», метод POST с кодом состояния 302:

ToolkitScriptManager1_HiddenField: 

__EVENTTARGET: 

__EVENTARGUMENT: 

__VIEWSTATE: ‘VIEWSTATE_STRING’

__VIEWSTATEGENERATOR: C2EE9ABB

__EVENTVALIDATION: ‘EVENTVALIDATION_STRING’

ctl00$cph_main$txt_email: my_eml

ctl00$cph_main$txt_pass: my_pswrd

ctl00$cph_main$Button1: login
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...