这一篇说下,使用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号大功造成。操作如下: