利用qq城市达人的外部接口获取QQ用户资料
这些数据返回的格式是Json格式的数据,不知道大家做.net有没有听说过,这在Java领域可是非常早就出来的概念和应用了。利用接口第一次获取的时候,返回的数据用包含有这些条件结果的页数、数据等信息,下面我介绍下返回的数据:

数据主要分为两部分,一部份是QQ用户资料,如{"uin":开始的数据,uin就是QQ号码,其他的根据英文就知道具体意思了;另外一部份是结果信息,包含当期页面的页数,总结果的数量和页数等信息,这些对我们非常有用。
要是想利用QQ城市达人接口进行编程,就是解析这些看似怪怪的字符了,它们其实是Json的标准格式,解析这些类型有两种方式,一种是依据这些数据的规律,使用字符定位的方式(如正则表达式等)方式进行提取数据,另外一种方式就是今天要讲的利用.NET的组件,直截将这些数据转换为实体类,一两行代码搞定,呵呵。
解析代码如下:
List<QQData> entities = (List<QQData>)JavaScriptConvert.DeserializeObject(json, typeof(List<QQData>));
我定义
的实体类信息如下:
Code
public class QQData
{
public int err;
public int page;
public pagecount property;
public List<memberdata> data = new List<memberdata>();
}
public class pagecount
{
public string total_count;
public int total_page_count;
}
public class memberdata
{
public string uin;
public string online;
public string birthday;
public string nickname;
public string smallurl;
public string sex;
public string yellow;
public string job;
public string cate;
电脑街 http://www.computerj.com您的好朋友。
public string state1;
public string state2;
public string state3;
public string city;
public string edu;
public string intent;
public string emotion;
public string home;
public string bloodType;
public string weight;
public string height;
public int albumID;
public override string ToString()
{
return string.Format("uin:{0} nickname:{1}", uin, UnicodeHelper.UnicodeToString(nickname));
}
}
使用城市达人接口数据几个地方要值得注意:
1)所有的数据是按页返回了,一般一页为10个数据,你如果要返回多页,或者每页返回多条记录,如我上面的软件,那就须要解析返回结果,或者循环查找指定的页面结果数据了。
2)查找多个页面的数据是比较耗费时间的,因此最好放到一个独立的线程处理数据,这样可以提高用户体验
3)使用Json.net的相关组件可以提高处理效率,不用去解析那些鬼怪的的字符,可是要注意的是,实体类的属性或者字段,必需符合返回结果的名称,大小写要统一,否则出错。
4)城市达人返回的中文字符是Unicode字符编码处理过的字符,因此要做相应的解析工作才干正常显示。
5)城市代码是一个非常庞大的数据,里面有省份(包括其他国家地区)、城市(如广州)、地区(如天河区)等内容,这些可以找城市达人的页面里面的脚本拿到相干的数据,不过最好的是大家参考我上面说的软件,里面的相干数据我都整理好了,大家可以直接使用。我是基于那些脚本里面的Json格式这里的,
至少花费1天的工夫,很辛苦,希望大家不要走老路。呵呵
希望此文对大家有所帮助,谢谢支持。上面的软件“QQ号码采集及邮件发送系统”详尽介绍地址:http://www.iqidi.com/qqcollector.htm
- Dreamweaver CS4新功能全面介绍!
- 安装MySQL步骤详解
- 判断字符串是否为空串也有技巧
- ADOAPI参考(ADO方法)之五
- 在Foxmail中发送手写体邮件
- CPU常见故障五例
- 企业一体化IP通信解决方案
- 安全管理中心解决方案
- 面向 Perl 开发人员的 XML,第 1 部分: XML 加 Perl —— 简单
- 表单数据提交时的字符编码问题
- 美图秀秀打造新年美图 祝福随意送
- 思科发布一系列路由器补丁 增强安全性
- 数据中心保护解决方案
- 一个简单的AJAX请求类
- Flash AS入门教程第六课:文本与字符串
- Linq to SQL之更新
- IPv6论坛:网站和商用服务正式迈入了IPv6时代
- 招聘类网站搜索引擎优化
- Seo:网站如何适应百度
- C# 理解浅拷贝和深拷贝(shallow copy VS deep copy )
