打造QQ查询软件
查QQ加入哪些QQ群 以下均为手写[b][font=楷体_GB2312][color=MediumTurquoise]struct QQMemberInfo
{
vector <long> m_vGroupVec;
//vector 储存用户加入的号码
};
hash_map<unsigned lon, QQMemberInfo> hMEmberQQs;
// 引擎把QQ号码做关键字段
--------------------------------------------------
--------------------------------------------------
struct QQMemberInfo
{
vector<long> m_vGrupVec;
//vector 存号码的
};
//main
int_tmain(int argc,_TCHAR*argv[])
{
string strResultFileName = "";
hash_map<unsigned long,QQMemberInfo>hMemberQQs;
long IGroupID;
int nGroupNum;
unsigned long IQQ;
while (cin >> IGroupID)
{
cin >> nGroupNum;
if (nGroupNum == 0)
continue;
for(int j=0;j<nGroupNum;j++)
{
cin >> IQQ;
if(hMemberQQs.find(IQQ)! = hMemberQs.end())
{
hash_map <unsigned long , QQMemberInfo>::iterator it = hMemberQQs.find(1QQ);
it -> second.m_vGroupVec.push_back(1GroupID);
}
else
{
QQMemberInfo qqInfo;
qqInfo.m_vGroupVec.push_back(1GroupID);
hMemberQQs[1QQ] = qqInfo;
}
}
}
}
---------------------------------------------
---------------------------------------------
while(1)
{
cout << " PLease enter query QQ : " << end1;
unsigned long 1Query;
cin >> 1Query;
if (hMemberQQs.find(1Query) !=hMemberQQs.end())
{
hash_map<unsigned long,QQMemberInfo>::iterator it = hMemberQQs.find(1Query);
cout << " Has Group Number : " << it -> second.m_vGroupVec.size() << end1;
vector<long>::interator iter = it -> second.m_vGroupVec.begin();
for (iter;
iter!=it -> second.m_vGroupVec.end();
iter++)
{
cout << (*iter) << end1;
}
}
else
{
cout << 1Query << " is not in the Index " << end1;
}
}
--------------------------------------------------------------
--------------------------------------------------------------
//构造用户号码信息的网页URL
string url = "http://group.qq.com/cgi-bin/groupuserall?groupid=" +GroupID;
//使用webclient抓取网页内容
webclient browser = new webclient();
UTF8Encoding enc = new UTF8Encoding enc();
string strHTML Contents;
try
{
//抓取网页内容,存在strHTML Contents 中
strHTML Contents = enc.GetString(browser.DownloadData(url));
}
catch(WebException exp) //若出错返回嘛
{
return;
}
//正则表达式提取title=
string p3 = " title=\"[0-9]+\"";
Regex r = new Regex(p3,RegexOption.IgnoreCase);
//在strHTMLContents中提取QQ号码
Match Collection m =r.Matches(StrHTMLContents);
//得到群中的每一个QQ号并输出
for (int i=0; i<m.Count; i++)
{
string x =m[i].Value;
string strQQNumber = x.Substring(7,x.Length -8 );
sw.writeline(strQQNumber);
}
-------------------------------------------------------------
-------------------------------------------------------------[/color][/font][/b] 风尘大哥太帅了,真是崇拜啊~~~::03:: 字体不太清楚!::18:: ::18:: ::18:: ::18::
页:
[1]
