C#编写一款qq消息群发器
2021-04-21 14:27
先上软件成品图
功能编写大概分为以下几个部分了:
获取QQ分组
发送消息
先来讲发送消息吧,实现还是比较简单
//这段主要是用来打开会话窗口的(只能列表中的好友进行会话的) System.Diagnostics.Process.Start("tencent://message/?Menu=yes&uin=" + 要发送的QQ号 + "&Site=itbulu&Service=300&sigT=45a1e5847943b64c6ff3990f8a9e644d2b31356cb0b4ac6b24663a3c8dd0f8aa12a595b1714f9d45");
有了上面这段呢,我们就可以进行发送操作了,粘贴发送的消息,退出会话框,执行下一个会话qq
当然中间是需要线程.sleep的,不然可能窗口还没打开就执行了退出的命令
所以最初的消息群发版本都是手动添加要发送的qq号的,不过后来给朋友使用后,得到反馈:列表qq太多,导出qq号麻烦
(以下为初版)
得到反馈后,我就开始研究怎么获取好友的qq呢,找了很多资料,都走不通,后来发现空间有这样一个接口
于是模拟登录QQ空间,获取g_tk,有了g_tk,就可以顺利的去调用那个接口了
https://h5.qzone.qq.com/proxy/domain/r.qzone.qq.com/cgi-bin/tfriend/friend_show_qqfriends.cgi?uin={0}&follow_flag=1&groupface_flag=0&fupdate=1&g_tk={1}
{0}就是qq号了;{1}就是g_tk
通过访问这个就可以获取到qq下的所有好友的信息了(头像,QQ号,昵称。。。。)
通过过滤得到Json中的数据
后面就是琐碎的数据操作和绑定了
不过通过打开会话窗口的方式去发送消息,还是不够便利快捷,后面会研究通过smartqq的方式去获取发送的。