模拟登陆github

目的:模拟登陆github
工具:scrapy shell ,from scrapy.http import FormRequest

流程:通过解析github登陆页面https://github.com/login
利用chrome开发者工具截取信息
1.先在登陆页面输一次账号密码,在表单里得到需要输入的参数,如图
在这里插入图片描述
再结合页面的输入框,可知我们需要提交的表单要包含五个参数,其中需要我们人工输入的参数是1.login 2.password
2.接下来我们在cmd里输入个

scrapy shell https://github.com/login

接着

>> from scrapy.http import FormRequest 

接下来我们构造表单

>>fd={'login':'XXXXXX','password':'XXXXXX'}
>>request=FormRequest.from_response(response,formdata=fd)  

上一个代码块利用了FormResponse的from_response方法来从response中解析出我们要提交的三个隐式参数并帮我们自动加入了表单,这样我们就完成了模拟登陆
我们可以用

fetch(request)

查看返回状态

view(response)

可以帮我们查看页面

posted @ 2018-12-18 20:35  ayang818  阅读(144)  评论(0编辑  收藏  举报