python 利用requests模拟登陆问题

李治廷泪别花样团
  • 9

使用Python的requests登陆拉勾网,requests需要attribute为name的内容,但是拉钩的登陆页面:
(https://passport.lagou.com/login/login.html)里面,用户名和密码的部分没有name是空的,具体如下:

用户名部分的HTML:
<input type="text" class="input input_white" id="" name="" 
placeholder="请输入已验证手机/邮箱" data-required="required" 
autocomplete="off" >

密码部分HTML:
<input type="password" class="input input_white" id="" 
name="" placeholder="请输入密码" data-required="required" 
autocomplete="off" >

请问高手如何处理?或者有别的module推荐?先谢谢了!

回复
阅读 4k
6 个回答
✓ 已被采纳

在拉钩登录页面按F12打开开发者工具栏,切换到Network一栏上,然后在输入框中输入错误的用户名和密码提交之后,会看到network标签内,有一个login.json,点击会看到刚才的请求内容,可以在Headers看到form 表单的字段,也就是你需要的name

python当中最常见的模块就是requests,大概没有更好的了。而且你换其他库,也需要input 的 name

图片描述

抓个包就知道了。。

真心建议所有学HTTP模拟的人先把HTTP协议浏览一遍.

这个不是简单的表单提交,而是用ajax把表单数据提交的,所以input标签里面有没有name无所谓,在chrome上打开审查元素,选择network,XHR,,然后在登陆页面的表单上填写错误的信息,就能看到发出的异步请求了图片描述

我一般用selenium+photomJS来模拟登录一些页面内容动态加载的网站,python-selenium对Ajax加载的内容专门有解决方法

朱恒一
  • 1
新手上路,请多包涵

你好,请问可以登录拉勾了吗?可以分享下源码吗?

宣传栏