易语言获取群内全部成员利用模拟按键的方式艾特成员

时间:2022-04-24 15:07:58

DLL命令表

?
1
2
3
4
.版本 2
.DLL命令 _鼠标取坐标句柄, 整数型, "user32", "WindowFromPoint"
  .参数 xPoint, 整数型, , x点值
  .参数 yPoint, 整数型, , y点值;

全局变量表

?
1
2
3
4
.版本 2
.全局变量 全_Uin, 文本型
.全局变量 全_Bkn, 文本型
.全局变量 全_Cookie, 文本型

常量数据表

?
1
2
3
.版本 2
.常量 正则表达式_群列表, "<文本长度: 22>", , gc":(\d+),"gn":"(.*?)"
.常量 正则表达式_群成员, "<文本长度: 53>", , nick":"(.*?)"[\s\S]*?"role":(\d+),[\s\S]*?uin":(\d+)}

计算群列表群成员

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
.版本 2
.程序集 集_QQ功能
.子程序 QQ群_计算Bkn, 文本型
.参数 skey, 文本型
.局部变量 基值, 整数型
.局部变量 计数, 整数型
.局部变量 长度, 整数型
.局部变量 结果, 整数型
基值 = 5381
计数 = 0
长度 = 取文本长度 (skey)
.判断循环首 (计数 < 长度)
  基值 = 基值 + 左移 (基值, 5) + 取代码 (skey, 计数 + 1)
  计数 = 计数 + 1
.判断循环尾 ()
结果 = 位与 (基值, 2147483647)
返回 (到文本 (结果))
.子程序 QQ群_群列表, 文本型
.参数 模式, 整数型, , 0=群验证;1=获取群列表
.参数 Group, 文本型, 可空
.局部变量 Text, 文本型
.如果真 (模式 = 0)
  全_Bkn = QQ群_计算Bkn (文本_取出中间文本 (全_Cookie, “skey=”, “;”, , ))
  Text = 编码_utf8到gb2312 (网页_访问S (“http://qun.qq.com/cgi-bin/qun_mgr/get_group_list”, 1, “bkn=” + 全_Bkn, 全_Cookie, , , , , , , , , , , , , ))
  .如果真 (寻找文本 (Text, Group, , 假) ≠ -1)
    返回 (“验证成功”)
  .如果真结束
  返回 (“验证失败”)
.如果真结束
.如果真 (模式 = 1)
  全_Bkn = QQ群_计算Bkn (文本_取出中间文本 (全_Cookie, “skey=”, “;”, , ))
  Text = 文本_替换 (编码_URL解码 (网页_访问S (“http://qun.qq.com/cgi-bin/qun_mgr/get_group_list”, 1, “bkn=” + 全_Bkn, 全_Cookie, , , , , , , , , , , , , ), 真), , , , “&nbsp;”, “”, , , , , , , , )
  返回 (Text)
.如果真结束
返回 (Text)
.子程序 QQ群_群成员, 文本型
.参数 模式, 整数型, , 0=获取群成员数量;1=获取群成员
.参数 Group, 文本型
.参数 st, 文本型, 可空
.参数 end, 文本型, 可空
.局部变量 Text, 文本型
.如果真 (模式 = 0)
  全_Bkn = QQ群_计算Bkn (文本_取出中间文本 (全_Cookie, “skey=”, “;”, , ))
  Text = 文本_替换 (编码_URL解码 (网页_访问S (“http://qun.qq.com/cgi-bin/qun_mgr/search_group_members”, 1, “gc=” + Group + “&st=0&end=20&sort=0&bkn=” + 全_Bkn, 全_Cookie, , , , , , , , , , , , , ), 真), , , , “&nbsp;”, “”, “&#39;”, “”, , , , , , )
  Text = 文本_取出中间文本 (Text, “count” + #引号 + “:”, “,”, , )
.如果真结束
.如果真 (模式 = 1)
  全_Bkn = QQ群_计算Bkn (文本_取出中间文本 (全_Cookie, “skey=”, “;”, , ))
  Text = 文本_替换 (编码_URL解码 (网页_访问S (“http://qun.qq.com/cgi-bin/qun_mgr/search_group_members”, 1, “gc=” + Group + “&st=” + st + “&end=” + end + “&sort=0&bkn=” + 全_Bkn, 全_Cookie, , , , , , , , , , , , , ), 真), , , , “&nbsp;”, “”, “&#39;”, “”, , , , , , )
.如果真结束
返回 (Text)

QQ群艾特功能

此功能需要加载精易模块5.6

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
.版本 2
.支持库 shellEx
.支持库 iext
.程序集 窗口程序集_窗口1
.程序集变量 集_开始工作, 逻辑型
.程序集变量 集_窗口标题, 文本型
.程序集变量 集_热键F4, 整数型
.程序集变量 集_窗口句柄, 整数型
.程序集变量 集_获取群员防卡线程, 整数型
.程序集变量 集_热键F3, 整数型
.子程序 _窗口1_创建完毕
集_开始工作 = 假
通用对话框1.过滤器 = “图片文件|*.png;*.jpg”
集_热键F4 = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F4键)
集_热键F3 = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F3键)
全_Uin = 文本_取出中间文本 (全_Cookie, “uin=o”, “;”, , )
标签1.标题 = “QQ号码:” + 全_Uin
初始化 ()
.子程序 初始化
.局部变量 a, 整数型
.局部变量 正则, 正则表达式类
.局部变量 局_表项数, 整数型
正则.创建 (#正则表达式_群列表, QQ群_群列表 (1, ), , , , )
.计次循环首 (正则.取匹配数量 (), a)
  局_表项数 = 超级列表框1.插入表项 (, , , , , )
  超级列表框1.置标题 (局_表项数, 0, 到文本 (超级列表框1.取表项数 ()))
  超级列表框1.置标题 (局_表项数, 1, 正则.取子匹配文本 (a, 2, ))
  超级列表框1.置标题 (局_表项数, 2, 正则.取子匹配文本 (a, 1, ))
  处理事件 ()
.计次循环尾 ()
' ====================================================================
编辑框1.内容 = 读配置项 (取运行目录 () + “\@Set.ini”, “编辑框”, “宣传语”, )
编辑框2.内容 = 读配置项 (取运行目录 () + “\@Set.ini”, “编辑框”, “图片地址”, )
.判断开始 (读配置项 (取运行目录 () + “\@Set.ini”, “选择框”, “跳过群主/管理”, ) = “1”)
  选择框1.选中 = 真
.默认
  选择框1.选中 = 假
.判断结束
.子程序 _超级列表框1_当前表项被改变
线程_启动 (&防卡_获取群员, , 集_获取群员防卡线程)
.子程序 防卡_获取群员
.局部变量 a, 整数型
.局部变量 正则, 正则表达式类
.局部变量 局_表项数, 整数型
.局部变量 局_群人数量, 文本型
.局部变量 局_群人数, 文本型
.局部变量 局_循环次数, 整数型
.局部变量 局_群人数前, 整数型
.局部变量 b, 整数型
状态条1.置文本 (1, “正在获取群成员数量...”)
选择夹1.现行子夹 = 1
局_群人数量 = QQ群_群成员 (0, 超级列表框1.取标题 (超级列表框1.现行选中项, 2), , )
状态条1.置文本 (1, “该群共有人数:” + 局_群人数量 + “人...”)
局_循环次数 = 取整 (到整数 (局_群人数量) ÷ 100)
局_群人数前 = 0
.计次循环首 (局_循环次数 + 1, )
  局_群人数 = QQ群_群成员 (1, 超级列表框1.取标题 (超级列表框1.现行选中项, 2), 到文本 (局_群人数前), 到文本 (到整数 (局_群人数前) + 100))
  局_群人数前 = 局_群人数前 + 101
  正则.创建 (#正则表达式_群成员, 局_群人数, , , , )
  .计次循环首 (正则.取匹配数量 (), a)
    局_表项数 = 超级列表框2.插入表项 (, , , , , )
    超级列表框2.置标题 (局_表项数, 0, 到文本 (超级列表框2.取表项数 ()))
    超级列表框2.置标题 (局_表项数, 1, 正则.取子匹配文本 (a, 1, ))
    超级列表框2.置标题 (局_表项数, 2, 正则.取子匹配文本 (a, 3, ))
    .如果真 (正则.取子匹配文本 (a, 2, ) = “0”)
      超级列表框2.置标题 (局_表项数, 3, “群主”)
    .如果真结束
    .如果真 (正则.取子匹配文本 (a, 2, ) = “1”)
      超级列表框2.置标题 (局_表项数, 3, “管理”)
    .如果真结束
    .如果真 (正则.取子匹配文本 (a, 2, ) = “2”)
      超级列表框2.置标题 (局_表项数, 3, “群员”)
    .如果真结束
    处理事件 ()
  .计次循环尾 ()
  超级列表框2.保证显示 (超级列表框2.取表项数 () - 1)
  处理事件 ()
  状态条1.置文本 (1, “已获取群员” + 到文本 (超级列表框2.取表项数 ()) + “个...”)
.计次循环尾 ()
状态条1.置文本 (1, “已获取群员” + 到文本 (超级列表框2.取表项数 ()) + “个,线程已销毁...”)
线程_销毁 (集_获取群员防卡线程)
.子程序 _标签1_反馈事件, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型
.局部变量 聊天窗口, 整数型
.局部变量 a, 整数型
.局部变量 Firends, 文本型, , "0"
.局部变量 Count, 整数型
.局部变量 Number, 整数型
.如果真 (参数一 = 集_热键F4)
  状态条1.置文本 (1, “任务开始...”)
  集_开始工作 = 真
  集_窗口句柄 = _鼠标取坐标句柄 (取鼠标水平位置 (), 取鼠标垂直位置 ())
  聊天窗口 = 聊天窗口_取句柄 (集_窗口标题)
  .判断循环首 (聊天窗口 = 0)
    聊天窗口 = 聊天窗口_取句柄 (集_窗口标题)
  .判断循环尾 ()
  .计次循环首 (超级列表框2.取表项数 (), a)
    .判断开始 (选择框1.选中 = 真)
      .如果真 (超级列表框2.取标题 (a - 1, 3) = “群员”)
        加入成员 (Firends, 超级列表框2.取标题 (a - 1, 2)) ' 加入非群主\管理数组
      .如果真结束
    .默认
      加入成员 (Firends, 超级列表框2.取标题 (a - 1, 2)) ' 加入全部成员数组
    .判断结束
  .计次循环尾 ()
  Count = 绝对取整 (取数组成员数 (Firends) ÷ 20) ' 计算外循环次数
  .如果真 (Count × 20 < 取数组成员数 (Firends)) ' 判断余数
    Count = Count + 1 ' 有余数,加上1
  .如果真结束
  .计次循环首 (Count, )
    .如果真 (集_开始工作 = 假)
      跳出循环 ()
    .如果真结束
    .计次循环首 (20, )
      .如果真 (集_开始工作 = 假)
        跳出循环 ()
      .如果真结束
      Number = Number + 1
      .如果真 (Number > 取数组成员数 (Firends))
        Number = 0
        跳出循环 ()
      .如果真结束
      文本_投递 (聊天窗口, “@” + Firends [Number])
      程序_延时 (100, )
      键盘_消息 (聊天窗口, #回车键, 5, )
    .计次循环尾 ()
    .如果真 (集_开始工作 = 假)
      跳出循环 ()
    .如果真结束
    剪辑板_置图片 (读入文件 (编辑框2.内容))
    文本_投递 (聊天窗口, 编辑框1.内容)
    程序_延时 (100, 0)
    键盘_组合按键 (#V键, #Ctrl键, , )
    .如果真 (Number ≥ 0)
      程序_延时 (100, ) ' 这里模拟到20次发送的按键
      键盘_消息 (聊天窗口, #回车键, 5, )
    .如果真结束
  .计次循环尾 ()
.如果真结束
.如果真 (参数一 = 集_热键F3)
  状态条1.置文本 (1, “正在结束任务...”)
  集_开始工作 = 假
.如果真结束
状态条1.置文本 (1, “任务已结束...”)
.子程序 聊天窗口_取句柄, 整数型
.参数 昵称, 文本型
.局部变量 局_句柄, 整数型
.局部变量 rest, 文本型
.局部变量 窗口标题, 文本型
.局部变量 jx, 精易_矩形
.局部变量 arr, 整数型, , "0"
.局部变量 n, 整数型
窗口_模糊遍历窗口 (, “TXGuiFoundation”, , arr)
.计次循环首 (取数组成员数 (arr), n)
  rest = 窗口_取控件内容 (arr [n])
  窗口标题 = 窗口_取标题 (arr [n])
  .如果真 (rest ≠ “” 且 rest = 窗口标题 且 rest ≠ “TXMenuWindow” 且 rest ≠ “QQ” 且 rest ≠ “增加时长” 且 rest ≠ “电脑管家” 且 rest ≠ “勋章墙”)
    jx = 窗口_取位置和大小 (arr [n])
    窗口_还原 (arr [n])
    .如果真 (jx.右边 > 596 且 jx.底边 > 520)
      .如果真 (寻找文本 (rest, 昵称, , 假) ≠ -1)
        返回 (arr [n])
      .如果真结束
    .如果真结束
  .如果真结束
.计次循环尾 ()
返回 (0)
.子程序 取窗口信息
.局部变量 矩形, 精易_矩形
.局部变量 窗口坐标, 精易_坐标
.局部变量 屏幕坐标, 精易_坐标
处理事件 ()
矩形 = 窗口_取位置和大小 (集_窗口句柄)
集_窗口标题 = 窗口_取标题 (集_窗口句柄)
屏幕坐标 = 鼠标_取位置 ()
窗口坐标 = 鼠标_取窗口坐标 (窗口_取鼠标处窗口句柄 ())
.子程序 _按钮1_被单击
通用对话框1.类型 = 0
.如果真 (通用对话框1.打开 () = 真)
  编辑框2.内容 = 通用对话框1.文件名
  写配置项 (取运行目录 () + “\@Set.ini”, “编辑框”, “图片地址”, 编辑框2.内容)
.如果真结束
.子程序 _选择框1_被单击
.判断开始 (选择框1.选中 = 真)
  写配置项 (取运行目录 () + “\@Set.ini”, “选择框”, “跳过群主/管理”, “1”)
.默认
  写配置项 (取运行目录 () + “\@Set.ini”, “选择框”, “跳过群主/管理”, “0”)
.判断结束
.子程序 _编辑框1_内容被改变
写配置项 (取运行目录 () + “\@Set.ini”, “编辑框”, “宣传语”, 编辑框1.内容)

QQ快捷登陆启动窗口

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
.版本 2
.支持库 HtmlView
.程序集 窗口程序集_启动窗口
.程序集变量 集_QQ群号, 文本型
.子程序 __启动窗口_创建完毕
网页_清除Cookie (“qun.qq.com”)
.子程序 _超文本浏览框1_跳转完毕
.如果真 (超文本浏览框1.地址 = “http://qun.qq.com/member.html”)
  全_Cookie = 网页_取Cookie (“qun.qq.com”, )
  .' 如果真 (QQ群_群列表 (0, 集_QQ群号) = “验证成功”)
    ' 信息框 (“验证成功”, 0, , )
    载入 (窗口1, , 假)
    _启动窗口.销毁 ()
  .如果真结束
  .' 如果真 (QQ群_群列表 (0, 集_QQ群号) = “验证失败”)
    ' 信息框 (“验证失败”, 0, , )
    ' 结束 ()
  .如果真结束
.如果真结束

运行结果:

易语言获取群内全部成员利用模拟按键的方式艾特成员

总结

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