美文网首页程序员
智联招聘企业账号自动化登录

智联招聘企业账号自动化登录

作者: 古月白毛小狐狸 | 来源:发表于2016-12-31 15:10 被阅读0次

准备材料


  • 智联企业端账号
  • 打码兔平台账号

验证码


按顺序点击文字类型的验证码

通过抓包获取

Request URL:https://passport.zhaopin.com/chk/getcap?t1483158691059
Request Method:GET
Status Code:200 OK
Remote Address:59.151.5.6:443

注意:Request header需要传入Referer

Referer:https://passport.zhaopin.com/org/login

获得验证码原始图片

原始的错乱的验证码图片

还原验证码

审查网页元素

原理很简单,原始的乱序验证码图片作为背景图,然后根据相应的坐标重新拼成一张肉眼可以看懂的验证码图。
还原的坐标是固定的,就算以后变了,也可以通过解析网页重新获取。

还原后的验证码

原始乱序验证码 还原后的验证码

注意:还原后的验证码最下方有提示文字,所以打码的时候,只需要将还原后的验证码图发送给打码平台即可,并且不会影响点击的坐标

对接打码平台

打码平台

http://www.dama2.com

选择合适的打码类型

287 (鼠标坐标多选题.返回格式:x1,y1|x2,y2|x3,y3)
题分15 (普通4位数字的题分为10,所以不算贵)
http://wiki.dama2.com/index.php?n=ApiDoc.Pricedesc

获取打码结果

218,69|127,89|47,95

验证验证码

抓包获取验证验证码的请求

Request URL:https://passport.zhaopin.com/chk/verify?callback=jsonpCallback
Request Method:POST
Status Code:200 OK
Remote Address:59.151.5.5:443

Form data:
p:37,96;69,82;252,82
time:1483166711484

注意:
p是打码坐标,记得把|替换成;
time是时间戳

验证通过的response

jsonpCallback({MessageText:"57afe00208a3448dae057bd57c37e053"})

注意:

  • 打码兔背后也是人肉操作,不能确保100%打码成功。
  • 经过测试发现90%正确率还是有的。
  • 需要检查response的MessageText,如果为空表示验证失败,需要重新获取验证码后进行打码

自动登录

抓取智联招聘企业端登录的请求包

Request URL:https://passport.zhaopin.com/org/login
Request Method:POST
Status Code:200 OK
Remote Address:59.151.5.5:443

Form Data:
bkurl:
LoginName:r*******8
Password:m*******6
CheckCode:57afe00208a3448dae057bd57c37e053
IsServiceCheck:true
IsServiceCheck:false
servicecheckinput:已勾选

CheckCode就是验证验证码response里面的MessageText
这里比较坑爹的一点是有两个IsServiceCheck,请无视IsServiceCheck:false,否则会登录错误

登录后跳转

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>正在跳转</title>
    // ...
    <script type="text/javascript">
            // ...
            window.location.href = "http://rd2.zhaopin.com/s/loginmgr/loginproc_new.asp?t=636187922028987902";
        })
    </script>
</head>
<body>
    <div id="loading" style="float:left;margin:15px; height:100px; width:100px;"></div>
</body>
</html>

正常情况下,登录后就能访问受保护页面了,但智联招聘这货还要再摆你一道,在login请求完成后会拿到一个跳转页面,需要解析出一个跳转地址(当然不解析也没关系,这个跳转地址是固定的)

window.location.href = "http://rd2.zhaopin.com/s/loginmgr/loginproc_new.asp?t=636187922028987902";

访问这个跳转地址就大功告成了!

#### 获取简历

GET http://rd2.zhaopin.com/RdApply/Resumes/Apply/index


#### 技术参考

- Programming Language: `Python`
- HTTP Library: `Requests`
- Image Library: `pillow`
>http://pillow.readthedocs.io/en/3.4.x/handbook/tutorial.html
>Cutting, pasting, and merging images

相关文章

网友评论

    本文标题:智联招聘企业账号自动化登录

    本文链接:https://www.haomeiwen.com/subject/cmivvttx.html