scrapy(4)模拟登录

官网上说支持模拟登录,在中间件中

接下来实现模拟登录




蜘蛛文件如下:

#第二个蜘蛛,模拟用户名密码登录
class LoginSpider(scrapy.Spider):
    name = "testlogin"
    start_urls=["http://www.kgc.cn/member/login"]
    def parse(self, response):
        return scrapy.FormRequest.from_response(
            response,
            formdata={'KgcForm_models_LoginForm[identity]':'15210749058' ,'KgcForm_models_LoginForm[password]':'13630355136asd'},
            callback=self.after_login
        )
    #不成功回的
    def after_login(self,response):
        #找到报错时显示错误信息的标签
        txt=response.css('div.errorMessage::text').extract_first()
        if txt is None:
            #txt=response.css('div.common-head.fix::text').extract_first()
            #print(txt)
        #登录成功后看所学的所有课程
        #http://www.kgc.cn/my/jobOE.shtml这个页面是就业课的连接
            yield  response.follow("http://www.kgc.cn/my/jobOE.shtml",self.listke)
        else:
            print(txt)
    def listke(self,response):
        titles = response.css('a.courseTitle.f16.black::text').extract()
        for i in titles:
            print(i)



猜你喜欢

转载自blog.csdn.net/baiyan_er/article/details/80241315