scrapy模拟登录

登录的实质就是朝着服务器发送含有登录表单数据的HTTP请求(通常都是POST)。

scrapy提供了一个FormRequest类,是Request的子类,专门用来构造含有表单数据的请求,FormRequest的构造器方法有一个formdata参数,接受字典形式的表单数据。

在spider中使用FormRequest的流程:

  1. 覆写基类的start_requests方法,最先请求登录页面
  2. login方法是登录页面的解析函数,在该方法中进行模拟登录,构造表单请求并进行提交 
  3. parse_login方法是表单请求的响应处理函数,在该方法中通过在用页面查找特殊字符来判断是否登录成功了,如果成功就调用基类中的start_requests方法,继续爬取start_urls中的页面
posted @ 2019-10-22 09:26  tulintao  阅读(250)  评论(0编辑  收藏  举报