scrapy发送验证码url下载后模拟登录出现405错误

新手上路,请多包涵

scrapy模拟登录下载的验证码登录不能识别出现405错误

题目来源及自己的思路

def start_requests(self):

    yield scrapy.Request(
        url= "https://www.iqianjin.com/user/login?backUrl=https://www.iqianjin.com/?utmSource=190",
        headers=self.headers,
        meta={'cookieJar': 1},
        callback=self.Get_Code
    )

def Get_Code(self, response):
    Time = int(time.time() * 1000)
    code_url = "https://www.iqianjin.com/user/getCode?v=%s" % Time
    yield scrapy.Request(
        url=code_url,
        headers=self.hd,
        callback=self.post_login,
        meta={'cookieJar': response.meta['cookieJar']},
        dont_filter=True
    )

def post_login(self, response):
    f = open("code.png", "wb")
    f.write(response.body)
    f.close()
    code = raw_input("请输入你的验证码:")
    self.data["code"] = code
    yield scrapy.http.FormRequest(
        url="https://www.iqianjin.com/user/login?backUrl=//www.iqianjin.com/userCenter/index",
        formdata=self.data,
        headers=self.headers,
        meta={ 'cookieJar': response.meta['cookieJar'] },
        callback=self.parse,
        dont_filter=True

这是错误
2018-07-10 16:55:32 [scrapy.downloadermiddlewares.cookies] DEBUG: Sending cookies to: <POST https://www.iqianjin.com/user...;
Cookie: svc=4B58BEC402A895695428CBFE2A0643A7

2018-07-10 16:55:32 [scrapy.core.engine] DEBUG: Crawled (405) <POST https://www.iqianjin.com/user...; (referer: https://www.iqianjin.com/user...

2018-07-10 16:55:32 [scrapy.spidermiddlewares.httperror] INFO: Ignoring response <405 https://www.iqianjin.com/user...;: HTTP status code is not handled or not allowed
2018-07-10 16:55:32 [scrapy.core.engine] INFO: Closing spider (finished)

阅读 4.4k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题