这篇文章主要介绍了如何利用C#快速查出哪些QQ好友空间屏蔽了自己,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
首先我们进入qq群
进去后我们可以看到不仅是所有的QQ群有,连当前qq的所有好友也有 我们点击好友那个接口,打开所有的好友,直接复制就行了,其它的交给正则表达式吧!
然后我们登录QQ号,打开这个链接 http://user.qzone.qq.com/自己QQ号/infocenter 打开f12,刷新找到第一个接口,找到发送请求的cookie,现在c#获取cookie我还不会哦,写爬虫还是python好呢
现在我们有三个准备了,登录状态下的QQ号,cookie已经所以的qq好友 接下来看我的完整代码
using System; using System.Collections.Generic; using System.IO; using System.Net; using System.Net.Http; using System.Text; using System.Text.RegularExpressions; namespace ConsoleApp6 { class Program { static void Main(string[] args) { string url = "http://user.qzone.qq.com/<<QQ>>/infocenter"; string txt = ""; StreamReader sr = new StreamReader(@"qq.txt");//里面装的是所以qq好友,直接将复制的写进去 while (!sr.EndOfStream) { string str = sr.ReadLine(); txt += str + "\n"; } sr.Close(); string regex1 = "name: \"(?<name>.*?)\",";//获取QQ昵称 string regex2 = "uin: (?<qq>.*?)}";//获取QQ昵称 MatchCollection namelist = Regex.Matches(txt, regex1); MatchCollection qqlist = Regex.Matches(txt, regex2); if (namelist.Count != qqlist.Count) { Console.WriteLine("qq昵称与QQ号数目不匹配!"); return; } Dictionary<string, string> dic = new Dictionary<string, string>(); for (int i = 0; i < namelist.Count; i++) { string qqname = Regex.Match(namelist[i].Value, regex1).Groups["name"].ToString().Trim(); string qqnumber = Regex.Match(qqlist[i].Value, regex2).Groups["qq"].ToString().Trim(); dic.Add(qqname, qqnumber); } string cookie = "#";//将复制的cookie放在里面哦 foreach (var item in dic) { url = url.Replace("<<QQ>>", item.Value); HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "GET"; req.Accept = "text/html"; req.AllowAutoRedirect = true; req.Headers.Add("Encoding", Encoding.UTF8.ToString()); req.Headers.Add("cookie", cookie); req.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36"; HttpWebResponse res = (HttpWebResponse)req.GetResponse(); using (StreamReader reader = new StreamReader(res.GetResponseStream())) { string html = reader.ReadToEnd(); if (!string.IsNullOrEmpty(html)) { string filePath = System.IO.Directory.GetCurrentDirectory() + "\\" + item.Key + item.Value + ".txt"; using (StreamWriter sw = new StreamWriter(filePath)) { sw.Write(html); } Console.WriteLine(item.Key + item.Value +"Download OK!\n"); } } url = url.Replace(item.Value,"<<QQ>>"); } Console.WriteLine("成功啦,去程序目录一个个看吧!"); } } }
里面有说放qq号和cookie的注释,然后运行
如果里面有这句话的,唉
感谢你能够认真阅读完这篇文章,希望小编分享的“如何利用C#快速查出哪些QQ好友空间屏蔽了自己”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。