C# 实现QQ自动化——消息模拟发送(3)

这一篇说下,使用Fiddler抓取QQ群成员号码,抓取后的号码保存数据库,后期结合消息模拟发送,挨个发消息

第一步、首先去安装Fiddler软件,我这里用的是Fiddler 4。然后Fiddler设置一下,设置如下

Tools-->Options


第二步、点击HTTPS选项卡,设置如下:


第三步、点击Connections选项卡,设置如下:


设置完后,重启下Fiddler。

第五步,打开你的QQ群,成员选项卡,Fiddler捕捉到QQ成员列表会话如下图:


第六步、分析会话数据


我会看到这是一个不正规的JSON数据,用JSON反序列是解析不出来的。这里写个正则表达式把成员的QQ号全部提取出来。

正规表达式如下:

"(?<qqid>\\d+)":\{

第七步,拖控件,整界面

下面我们用C#编写,把成员信息全部提取信息出来,在之前的Automate.QQ项目中,右击项目,添加,新建项。新建一个表单,如下图:


拖一个TextBox,拖一个Button,TextBox。TextBox的Multiline属性设置True,ScrollBars设置成Both。


第八步,双击按钮生成点击事件,开始撸代码,代码如下:

private void button1_Click(object sender, EventArgs e)

{

//定义正则表达式

var rex = new Regex("\"(?<qqid>\\d+)\":\\{", RegexOptions.Multiline);

var result = new List<string>();

//正则匹配

var m = rex.Match(textBox1.Text);

//循环取群成员QQ号

while (m.Success)

{

result.Add(m.Groups["qqid"].Value);

m = m.NextMatch();

}

if (result.Any())

{

//把成员QQ号显示在TextBox中

textBox1.Text = string.Join(Environment.NewLine, result);

}

}

第九步,把启动窗口改成当前窗口,如下图:


第十步,调试跑起来,把Fiddler的TextView中的复制,粘贴到TextBox中,点击按钮,提示QQ号大功造成。操作如下:



20200623_180557
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。