Scrapy 刮毛圆';t让我登录到asp.net页面(ASPX)

Scrapy 刮毛圆';t让我登录到asp.net页面(ASPX),scrapy,web-crawler,Scrapy,Web Crawler,嗨,我很难让我的scrapy spider脚本登录到aspx(asp.net)网站 该脚本应该爬网一个网站以获取产品信息(这是一个供应商网站,因此我们可以这样做),但无论出于何种原因,该脚本都无法使用下面的脚本登录到该网页,有一个用户名和密码字段以及一个图像按钮,但当脚本运行时,它根本不起作用,我们被重定向到主页。。。我相信这与网页是asp.net有关,显然我需要传递更多的信息,但我诚实地尝试了一切,我不知道下一步该做什么 我做错了什么 import scrapy class LeedaB2B

嗨,我很难让我的scrapy spider脚本登录到aspx(asp.net)网站

该脚本应该爬网一个网站以获取产品信息(这是一个供应商网站,因此我们可以这样做),但无论出于何种原因,该脚本都无法使用下面的脚本登录到该网页,有一个用户名和密码字段以及一个图像按钮,但当脚本运行时,它根本不起作用,我们被重定向到主页。。。我相信这与网页是asp.net有关,显然我需要传递更多的信息,但我诚实地尝试了一切,我不知道下一步该做什么

我做错了什么

import scrapy

class LeedaB2BSpider(scrapy.Spider):
    name = 'leedab2b'
    start_urls = [
        'https://www.leedab2b.co.uk/customerlogin.aspx'
        ]


    def parse(self, response):
        return scrapy.FormRequest.from_response(response=response,   
                                                formdata={'ctl00$ContentPlaceHolder1$tbUsername': 'emailaddress@gmail.com', 'ctl00$ContentPlaceHolder1$tbPassword': 'yourpassword'},
                                                clickdata={'id': 'ctl00_ContentPlaceHolder1_lbcustomerloginbutton'},
                                                callback=self.after_login)

    def after_login(self, response):
        self.logger.info("you are at %s" % response.url)

FormRequest.from\u response
似乎没有发送formdata中的\u EVENTTARGET、\u EVENTARGUMENT,请尝试手动添加它们:

formdata={
    '__EVENTTARGET': 'ctl00$ContentPlaceHolder1$lbcustomerloginbutton',
    '__EVENTARGUMENT': '',
    'ctl00$ContentPlaceHolder1$tbUsername': 'emailaddress@gmail.com',
    'ctl00$ContentPlaceHolder1$tbPassword': 'yourpassword'
}