某吧爬虫 第一步

爬虫很多,可以试着自己整一个。

三言两语,走出第一步。


首先浏览器打开某吧登录页面

http://www.******.com/member.php?mod=logging&action=login

fec8e80e0c6f2593493f8cdac2d005cb.png

按下F12,F5刷新页面,抓取到这条链接:“http://www.*******.com/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=*****&inajax=1”,如图

5701c2d042e5a2197c2a3798e7d2091a.png

链接中loginhash是变化的,提交的表单formhash是变化的,referer、loginfield是固定的,username、questionid(序号,自己抓取几次就知道)和answer是个人信息,而password为加密的,但一眼看穿是md5加密。

也就是说除了formhash和loginhash会变化外,其余参数要么是固定的,要么是自己的信息,很好理解。

那么formhash和loginhash怎么来的呢?

点击上面抓取到的链接,点击“响应”,按Ctrl+F,分别搜索formhash和loginhash即可,如下图:

c8dc062d60e5a5ab171f7030e940cd65.png

801a9cea1be405fc5c82070258cc5228.png

找到各个参数来源后,进行正则或截取文本,可以组合出登录的最终url:

http://www.******.com/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=” + loginhash + “&inajax=1

再组合提交信息(body),提交请求即可。通过关键字“欢迎您回来”判断成功与否。

body = “formhash=” + formhash + “&referer=http%3A%2F%2Fwww.*****.com%2Fzuixin.php&loginfield=username&username=” + 用户名 + “&password=” + 校验_取md5_文本 (密码, , , ) + “&questionid=” + 密保问题id + “&answer=” + 密保答案

主要代码如下,过程中把cookies保存下来连同协议头一并提交:

url = “http://www.******.com/member.php?mod=logging&action=login&referer=http%3A%2F%2Fwww.zuanke8.com%2Fzuixin.php”
response = 到文本 (网页_访问 (url, 0, , , c, , , , , , , , ))
loginhash = 文本_取出中间文本 (response, “loginhash=”, #引号 + “>”, , )
formhash = 文本_取出中间文本 (response, #常量1, #引号, , )
url = “http://www.******.com/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=” + loginhash + “&inajax=1”
body = “formhash=” + formhash + “&referer=http%3A%2F%2Fwww.*****.com%2Fzuixin.php&loginfield=username&username=” + 用户名 + “&password=” + 校验_取md5_文本 (密码, , , ) + “&questionid=” + 密保问题id + “&answer=” + 密保答案
response = 到文本 (网页_访问 (url, 1, body, c, cookies, #登陆协议, , , , , , , ))  ' 登陆
.如果 (寻找文本 (response, “欢迎您回来”, , 假) ≠ -1)
     调试输出(“登陆成功” )

注:

请勿频繁对别人服务器发送网络请求,仅供学习,后果自负!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值