学习内容简介
本教程主要实现:
契约sdk cookie函数实践
QQ空间操作测试
说明:
本课程源代码支持契约单Q版和多Q版框架
联系我们
如果你有机器人开发问题或有需求不会开发,可与我们进行联系
QQ机器人开发交流群
声明
本教程非契约官方教程,为作者学习易语言过程的知识总结,将主要内容整理、汇总后,形成本教程。
致力于进行技术交流,帮助新人快速入门,少走弯路。
请在遵守中华人民共和国法律、腾讯相关规定和契约框架相关说明下进行使用
如您使用本技术,进行包括但不限于如下行为,软件作者并不知情,不承担任何法律风险
1.违法行为
2.违法腾讯规定
3.违法契约框架规定
教程内容
上一节已经说到,契约提供的cookie功能非常有意义,可以让开发人员基于cookie扩展很多功能,其中操作QQ空间就是一个很好的举例,本课程将带领大家自动模拟操作QQ说说功能,界面设计如下:
获得QQ空间cookie
我们知道空间的域名 https://user.qzone.qq.com/
所以获取空间Cookie非常简单
.版本 2
QQID = 获取QQID ()
cookie = QY.取域名Cookie (QQID, “https://user.qzone.qq.com/”)
获得QQ空间的 token
由于QQ空间的特殊性 每次访问需要先获得token,是个随机值,没有看到契约提供API,需要自己抓取
代码如下:
.版本 2
.支持库 spec
.子程序 取_Qzonetoken, 文本型
.参数 QQ, 文本型
.参数 cookie, 文本型
.局部变量 qzonetoken, 文本型
.局部变量 str, 文本型
str = 到文本 (网页_访问_对象 (“https://user.qzone.qq.com/” + QQ + “/”, , , cookie, , ))
qzonetoken = 文本_取左边 (文本_取右边 (str, “g_qzonetoken = (function(){ try{return ” + #引号), #引号)
调试输出 (qzonetoken)
返回 (qzonetoken)
计算 gtk
这个也是QQ空间需要的参数,基本上与契约的QY.取CsrfToken ()相同,使用cookie中的skey值,计算出来gtk
.版本 2
.子程序 QQ_gtk, 文本型
.参数 skey, 文本型
.局部变量 基值, 整数型
.局部变量 计数, 整数型
.局部变量 长度, 整数型
.局部变量 结果, 整数型
基值 = 5381
计数 = 0
长度 = 取文本长度 (skey)
.判断循环首 (计数 < 长度)
基值 = 基值 + 左移 (基值, 5) + 取代码 (skey, 计数 + 1)
计数 = 计数 + 1
.判断循环尾 ()
结果 = 位与 (基值, 2147483647)
返回 (到文本 (结果))
发说说
完整发说说代码如下:
.版本 2
.子程序 _按钮1_被单击
.局部变量 QQID, 长整数型
.局部变量 cookie, 文本型
.局部变量 token, 文本型
.局部变量 gtk, 文本型
.局部变量 content, 文本型
.局部变量 响应QQ, 文本型
.局部变量 ss, 文本型
QQID = 获取QQID ()
响应QQ = 到文本 (QQID)
cookie = QY.取域名Cookie (QQID, “https://user.qzone.qq.com/”)
token = 取_Qzonetoken (到文本 (QQID), cookie)
gtk = QQ_gtk (文本_取左边 (文本_取右边 (cookie, “; skey=”), “;”))
content = 编码_URL编码 (编辑框4.内容, 假, 真)
ss = 编码_utf8到gb2312 (到文本 (网页_访问 (“https://user.qzone.qq.com/proxy/domain/taotao.qzone.qq.com/cgi-bin/emotion_cgi_publish_v6?qzonetoken=” + token + “&g_tk=” + gtk, 1, “syn_tweet_verson=1¶mstr=1&pic_template=&richtype=&richval=&special_url=&subrichtype=&who=1&con=” + content + “&feedversion=1&ver=1&ugc_right=1&to_sign=0&hostuin=” + 响应QQ + “&code_version=1&format=fs&qzreferrer=https%3A%2F%2Fuser.qzone.qq.com%2F” + 响应QQ + “?_t_=0.6553320310054189”, cookie, )))
编辑框1.内容 = 编辑框1.内容 + #换行符 + ss
非常简单
在看看实际效果
总结
本节基本上契约cookie sdk的基本使用,可以实现发QQ说说功能,需要实现更多功能 点赞,留言也是一样的,不一一列举
本教程完整源代码
教程源代码20元
契约发说说源代码