易语言通过get的方式多线程刷微视播放量的代码

发布时间:2020-10-02 18:10:21 作者:易语言教程贝贝吧
来源:脚本之家 阅读:443

全局变量表

.版本 2
.全局变量 skey, 文本型
.全局变量 gtk, 文本型

QQ登陆代码

.版本 2
.支持库 spec
.程序集 窗口程序集_窗口1
.子程序 _超文本浏览框1_载入开始
.局部变量 正则, 正则表达式
.局部变量 cookie, 文本型
cookie = 网页_取Cookie (“qq.com”, )
调试输出 (cookie)
.如果真 (寻找文本 (cookie, “;skey=”, , 假) ≠ -1)
  正则.创建 (“(@[0-9a-zA-Z]{9})”, , , )
  正则.搜索全部 (cookie)
  skey = 正则.取子匹配文本 (1, 1)
  gtk = 计算Gtk (skey)
  _启动窗口.可视 = 真
  销毁 ()
.如果真结束
.子程序 计算Gtk, 文本型, 公开, 返回计算后的值(Gtk)
.参数 被计算值, 文本型, , skey或者p_skey
.局部变量 hash, 整数型
.局部变量 i, 整数型
.局部变量 skey1, 文本型
hash = 5381
skey1 = 被计算值
.如果真 (skey1 = “”)
  skey1 = 被计算值
.如果真结束
.计次循环首 (取文本长度 (skey1), i)
  hash = hash + 左移 (hash, 5) + 取代码 (skey1, i)
.计次循环尾 ()
hash = 位与 (hash, 2147483647)
返回 (到文本 (hash))
.子程序 _窗口1_可否被关闭, 逻辑型
结束 ()

微视多线程刷播放量的代码

实现此功能需要加载精易模块5.6、鱼刺类_Http模块和鱼刺类_多线程应用模块

.版本 2
.支持库 EThread
.程序集 窗口程序集_启动窗口
.程序集变量 临界, 鱼刺类_临界许可
.程序集变量 线程池, 鱼刺类_线程池Ex
.程序集变量 已刷播放量, 文本型
.程序集变量 id, 文本型
.子程序 __启动窗口_创建完毕
_启动窗口.可视 = 假
载入 (窗口1, , 真)
.子程序 工作开始
.局部变量 并发线程数, 整数型
.局部变量 bool, 逻辑型
.局部变量 需刷数量, 整数型
.局部变量 int, 整数型
.局部变量 已派发任务数, 整数型
.如果真 (线程池.取_状态 () ≠ 0)
  返回 ()
.如果真结束
按钮_启动停止.禁止 = 真
按钮_启动停止.标题 = “正在启动”
并发线程数 = 到整数 (编辑框_并发线程数.内容)
.如果真 (并发线程数 < 1)
  并发线程数 = 1
.如果真结束
.如果真 (并发线程数 > 999)
  并发线程数 = 999
.如果真结束
bool = 线程池.创建 (并发线程数, , , , )
.如果真 (bool = 假)
  按钮_启动停止.标题 = “启动”
  按钮_启动停止.禁止 = 假
  返回 ()
.如果真结束
需刷数量 = 到整数 (编辑框_注册数量.内容)
.如果真 (需刷数量 < 1)
  需刷数量 = 1
.如果真结束
按钮_启动停止.标题 = “停止”
按钮_启动停止.禁止 = 假
已派发任务数 = 0
.判断循环首 (已派发任务数 < 需刷数量)
  int = 线程池.取_空闲线程数 ()
  .判断循环首 (int = 0)
    .如果真 (线程池.取_状态 () ≠ 1)
      返回 ()
    .如果真结束
    _延迟 (10)
    int = 线程池.取_空闲线程数 ()
  .判断循环尾 ()
  .计次循环首 (int, )
    线程池.投递任务 (&刷播放量, , )
    已派发任务数 = 已派发任务数 + 1
  .计次循环尾 ()
  _处理事件 ()
.判断循环尾 ()
.判断循环首 (线程池.取_是否空闲 () = 假)
  .如果真 (线程池.取_状态 () ≠ 1)
    返回 ()
  .如果真结束
  _延迟 (10)
.判断循环尾 ()
工作结束 ()
.子程序 工作结束
.如果真 (线程池.取_状态 () ≠ 1)
  返回 () ' 防止频繁调用 其实也没事的 线程池在销毁中被再次调用 销毁 会立即返回 假 不会造成报错
.如果真结束
按钮_启动停止.禁止 = 真
按钮_启动停止.标题 = “正在停止”
线程池.销毁 ()
按钮_启动停止.标题 = “启动”
按钮_启动停止.禁止 = 假
时钟_状态.时钟周期 = 1000
编辑框_作品地址.禁止 = 假
.子程序 刷播放量
.局部变量 http, WinHttpW
.局部变量 data, 文本型
.局部变量 局_skey, 文本型
.局部变量 局_gtk, 文本型
.局部变量 局_id, 文本型
临界.进入 ()
局_skey = skey
局_gtk = gtk
局_id = id
临界.退出 ()
http.Auto ()
http.AutoCookies ()
http.SetTimeouts (3000, 3000, 3000, 3000)
http.Cookies (“skey=” + 局_skey)
http.Open (“POST”, “http://h6.qzone.qq.com/webapp/json/weishi/ReportFeedPlay?g_tk=” + 局_gtk)
http.SetAccept (“application/json”)
http.SetAcceptLanguage (“zh-CN,zh;q=0.9”)
http.SetRequestHeader (“origin”, “https://h6.qzone.qq.com”, )
http.SetReferer (“https://h6.qzone.qq.com/weishi/feed/” + 局_id + “/wsfeed?_proxy=1&_wv=1&id=” + 局_id + “&from=pc&orifrom=”)
http.SetUserAgent (“Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36”)
http.SetContentType (“application/json”)
http.SetXMLHttpRequest ()
http.Send (“{” + #引号 + “feed_id” + #引号 + “:” + #引号 + 局_id + #引号 + “}”, , )
data = http.GetResponseText ()
临界.进入 ()
' 试输出 (data)
已刷播放量 = 文本_取中间 (data, “playnum” + #引号 + “:”, “,” + #引号 + “_idc”, , , , )
' 输出 (已刷播放量)
临界.退出 ()
返回 ()
.子程序 _时钟_状态_周期事件
.局部变量 int, 整数型
' 0=未启动,1=正在工作,2=正在创建,3=正在销毁。
int = 线程池.取_状态 ()
.判断开始 (int = 0)
  标签_线程池状态.标题 = “线程池状态:未启动”
.判断 (int = 1)
  标签_线程池状态.标题 = “线程池状态:正在工作”
.判断 (int = 2)
  标签_线程池状态.标题 = “线程池状态:正在创建”
.判断 (int = 3)
  标签_线程池状态.标题 = “线程池状态:正在销毁”
.默认
.判断结束
int = 线程池.取_线程池容量 ()
标签_线程池容量.标题 = “线程池容量:” + 到文本 (int)
int = 线程池.取_执行线程数 ()
标签_执行线程数.标题 = “执行线程数:” + 到文本 (int)
int = 线程池.取_空闲线程数 ()
标签_空闲线程数.标题 = “空闲线程数:” + 到文本 (int)
int = 线程池.取_队列任务数 ()
标签_队列任务数.标题 = “队列任务数:” + 到文本 (int)
标签_已注册数量.标题 = “已刷播放量:” + 已刷播放量
.子程序 _按钮_启动停止_被单击
.局部变量 str, 文本型
str = 按钮_启动停止.标题
.判断开始 (str = “启动”)
  id = 文本_取中间 (编辑框_作品地址.内容, “weishi/feed/”, “/wsfeed”, , , , )
  .如果 (id ≠ “”)
    编辑框_作品地址.禁止 = 真
    时钟_状态.时钟周期 = 1000
    启动线程 (&工作开始, , )
  .否则
    信息框 (“未在编辑框内找到视频id”, 0, , )
  .如果结束
.判断 (str = “停止”)
  工作结束 ()
.默认
  _处理事件 ()
.判断结束
.子程序 __启动窗口_可否被关闭, 逻辑型
工作结束 ()

运行结果:

易语言通过get的方式多线程刷微视播放量的代码

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对亿速云的支持。如果你想了解更多相关内容请查看下面相关链接

推荐阅读:
  1. python + selenium 刷B站播放量的方法步骤
  2. iOS 边下边播的实现代码

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

易语言 多线程 微视

上一篇:Vue中CSS动画原理的实现

下一篇:使用Nginx代理上网的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》