• 1326阅读
  • 2回复

POST实战演练 第8课:QQ登陆5173 [复制链接]

上一主题 下一主题
离线啊冲
 

只看楼主 倒序阅读 使用道具 楼主  发表于: 2016-08-30
.版本 2
.支持库 script

.程序集 窗口程序集1
.程序集变量 oauth_token, 文本型
.程序集变量 sigin, 文本型
.程序集变量 yzm, 文本型

.子程序 __启动窗口_创建完毕



.子程序 取验证码
.参数 qq, 文本型
.局部变量 返回值, 文本型

返回值 = E_HTTP_读文本 (“http://check.ptlogin2.qq.com/check?uin=” + qq + “&appid=15004501&r=0.03778264337152082”)
输出调试文本 (返回值)
yzm = 取中间文本 (返回值, “ptui_checkVC('0','”, “'”)
yzm = 子文本替换 (yzm, “');”, “”, , , 真)


.子程序 取中间文本, 文本型, 公开
.参数 欲取其部分的文本, 文本型
.参数 开始关键字, 文本型
.参数 结束关键字, 文本型
.参数 起始取出位置, 整数型, 可空
.参数 结束字符位置, 整数型, 参考 可空
.局部变量 z1, 整数型
.局部变量 z2, 整数型

.如果真 (是否为空 (起始取出位置))
    起始取出位置 = -1
.如果真结束
z1 = 寻找文本 (欲取其部分的文本, 开始关键字, 起始取出位置, 假)
.如果真 (z1 > -1)
    z1 = z1 + 取文本长度 (开始关键字)
    z2 = 寻找文本 (欲取其部分的文本, 结束关键字, z1, 假)
    .如果真 (z2 > z1)
        结束字符位置 = z2 + 取文本长度 (结束关键字)
        返回 (取文本中间 (欲取其部分的文本, z1, z2 - z1))
    .如果真结束

.如果真结束
结束字符位置 = -1
返回 (“”)

.子程序 qqlogin, 文本型
.参数 QQ, 文本型
.参数 pass, 文本型
.局部变量 密码, 文本型
.局部变量 url, 文本型
.局部变量 返回值, 文本型
.局部变量 cookies, 文本型
.局部变量 fn, 文本型

脚本组件1.执行 (#md5)
取验证码 (QQ)
密码 = 脚本组件1.运行 (“md5_3”, pass)
密码 = 脚本组件1.运行 (“md5”, 密码 + 到大写 (yzm))
url = “http://ptlogin2.qq.com/login?u=” + QQ + “&p=” + 密码 + “&verifycode=” + yzm + “&aid=15004501&u1=http%3A%2F%2Fopenapi.qzone.qq.com%2Foauth%2Fqzoneoauth_authorize%3Foauth_token%3D” + oauth_token + “%26oauth_callback%3Dhttp%253a%252f%252fpassport.5173.com%252fPartner%252fSignIn%253fappNo%253dqq%2526ticket%25” + sigin + “%2526returnUrl%253d687474702533612532662532667777772E353137332E636F6D253266%26oauth_consumer_key%3D213333%26src%3D1&h=1&ptredirect=1&ptlang=2052&from_ui=1&dumy=&fp=loginerroralert&action=3-11-11750&mibao_css=”
输出调试文本 (url)

' http://ptlogin2.qq.com/login?u=1752277676&p=7FCEF4C7B4F11ADB70BC983D283EF757&verifycode=!XYU&aid=15004501&u1=http%3A%2F%2Fopenapi.qzone.qq.com%2Foauth%2Fqzoneoauth_authorize%3Foauth_token%3D1956681099104802318%26oauth_callback%3Dhttp%253a%252f%252fpassport.5173.com%252fPartner%252fSignIn%253fappNo%253dqq%2526ticket%253dF0583AB278310A39B5CB3A785FCEE4D6E628BE87FEBAB0B493244FB81AC63D259EB9E1A6A879D0CC%2526returnUrl%253d687474702533612532662532667777772E353137332E636F6D253266%26oauth_consumer_key%3D213333%26src%3D1&h=1&ptredirect=1&ptlang=2052&from_ui=1&dumy=&fp=loginerroralert&action=1-11-8281&mibao_css=
返回值 = E_HTTP_读文本 (url)
' cookies = 取COOKIE (url)
' 输出调试文本 (cookies)
输出调试文本 (返回值)
返回 (返回值)




.子程序 获取oauth_token和sig
.局部变量 返回值, 文本型
.局部变量 返回信息, 文本型

返回值 = 到文本 (e_http_winnet (“https://passport.5173.com/Partner/LoginFrom?appNo=qq&returnUrl=http%3a%2f%2fwww.5173.com%2f”, , , , , , , , , 返回信息, , 假))
编辑框1.内容 = 返回信息
输出调试文本 (返回信息)
oauth_token = 取中间文本KK (返回信息, “oauth_token=”, “&oauth”)
sigin = 取中间文本KK (返回信息, “ticket%”, “%26returnU”)
sig.标题 = sigin
token.标题 = oauth_token


.子程序 取中间文本KK, 文本型, 公开
.参数 欲取其部分的文本, 文本型
.参数 开始关键字, 文本型
.参数 结束关键字, 文本型
.参数 起始取出位置, 整数型, 可空
.参数 结束字符位置, 整数型, 参考 可空
.局部变量 z1, 整数型
.局部变量 z2, 整数型

.如果真 (是否为空 (起始取出位置))
    起始取出位置 = -1
.如果真结束
z1 = 寻找文本 (欲取其部分的文本, 开始关键字, 起始取出位置, 假)
.如果真 (z1 > -1)
    z1 = z1 + 取文本长度 (开始关键字)
    z2 = 寻找文本 (欲取其部分的文本, 结束关键字, z1, 假)
    .如果真 (z2 > z1)
        结束字符位置 = z2 + 取文本长度 (结束关键字)
        返回 (取文本中间 (欲取其部分的文本, z1, z2 - z1))
    .如果真结束

.如果真结束
结束字符位置 = -1
返回 (“”)

.子程序 访问登陆成功授权, 文本型
.参数 地址, 文本型
.局部变量 返回信息, 文本型
.局部变量 返回值, 文本型

e_http_winnet (地址, , , , , , , , , 返回信息, , 假)
输出调试文本 (返回信息)
返回 (返回信息)

.子程序 访问同步信息授权, 文本型
.参数 地址, 文本型
.局部变量 返回信息, 文本型
.局部变量 返回值, 文本型

返回值 = 到文本 (e_http_winnet (地址, , , , , , , , , 返回信息, , 假))
输出调试文本 (返回值)
返回 (返回值)

.子程序 访问授权成功回送地址, 文本型
.参数 地址, 文本型
.局部变量 返回信息, 文本型
.局部变量 返回值, 文本型

返回值 = 到文本 (e_http_winnet (地址, , , , , , , , , 返回信息, , 假))
输出调试文本 (返回信息)
返回 (返回信息)

.子程序 访问5173登陆成功回送地址, 文本型
.参数 地址, 文本型
.局部变量 返回信息, 文本型
.局部变量 返回值, 文本型

返回值 = E_URL解码_UTF8 (到文本 (e_http_winnet (地址, , , , , , , , , 返回信息, , )))
输出调试文本 (返回值)
返回 (返回值)

.子程序 _按钮1_被单击

获取oauth_token和sig ()


.子程序 _按钮2_被单击

编辑框4.内容 = qqlogin (编辑框2.内容, 编辑框3.内容)

.子程序 _按钮3_被单击

编辑框6.内容 = 访问登陆成功授权 (编辑框5.内容)


.子程序 _按钮4_被单击

编辑框8.内容 = 访问同步信息授权 (编辑框7.内容)

.子程序 _按钮5_被单击

编辑框10.内容 = 访问授权成功回送地址 (编辑框9.内容)


.子程序 _按钮6_被单击

编辑框12.内容 = 访问5173登陆成功回送地址 (编辑框11.内容)
善者 慈悲心常在 无怨无恨 以苦为乐
默认压缩密码www.hifyl.com
文件分享密码问题:http://www.hifyl.com/read-htm-tid-4444.html
离线26011602001

只看该作者 沙发  发表于: 2017-07-02
  
离线a168747

只看该作者 板凳  发表于: 2017-08-01
fffffffffffffff
快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个