利用webservice获取所有手机号归属地
2010-05-19 21:22
155 查看
添加一个http://api.showji.com/locating/Mobile.asmx的webservice引用
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Data;
using System.Data.SQLite;
namespace GetMobileData
{
class GetData
{
publicvoid Get()
{
for (int i =0; i <=9; i++)
{
new Thread(new ParameterizedThreadStart(GetThread)).Start(i);
}
//List<MobileInfo> mInfos = new List<MobileInfo>();
}
privatevoid GetThread(object obj)
{
int nMobileBase =1300001;
int nOffset =1300000;
int i = (int)obj;
nMobileBase += i *10000;
nOffset += i *10000+9999;
for (int j = nMobileBase; j < nOffset; j++)
{
MobileInfo mInfo =new MobileInfo();
mInfo.MobileCode = j.ToString();
MobileService.Mobile mobileSrv =new MobileService.Mobile();
Console.WriteLine("正在查询"+ j);
mobileSrv.Query(j.ToString() +1234, out mInfo.Province, out mInfo.City, out mInfo.AreaCode, out mInfo.PostCode, out mInfo.CorpName, out mInfo.CardName);
Console.WriteLine("正在保存"+ j);
SaveToDB(mInfo);
}
}
privatevoid SaveToDB(MobileInfo mInfo)
{
SQLiteConnection liteConn =new SQLiteConnection("Data Source=E:\\UtilData\\mobile;Version=3;New=True;");
liteConn.Open();
string sSql ="INSERT INTO m_mobile_data (cMobileCode,cProvince,cCity,cAreaCode,cPostCode,cCorpName,cCardName)"+
"VALUES(@MobileCode,@Province,@City,@AreaCode,@PostCode,@CorpName,@CardName)";
SQLiteCommand liteCmd =new SQLiteCommand(liteConn);
liteCmd.CommandText = sSql;
//liteCmd.Parameters.
SQLiteParameter litePara =new SQLiteParameter();
litePara.ParameterName ="MobileCode";
litePara.DbType = DbType.String;
litePara.Value = mInfo.MobileCode;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="Province";
litePara.DbType = DbType.String;
litePara.Value = mInfo.Province;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="City";
litePara.DbType = DbType.String;
litePara.Value = mInfo.City;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="AreaCode";
litePara.DbType = DbType.String;
litePara.Value = mInfo.AreaCode;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="PostCode";
litePara.DbType = DbType.String;
litePara.Value = mInfo.PostCode;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="CorpName";
litePara.DbType = DbType.String;
litePara.Value = mInfo.CorpName;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="CardName";
litePara.DbType = DbType.String;
litePara.Value = mInfo.CardName;
liteCmd.Parameters.Add(litePara);
liteCmd.ExecuteNonQuery();
liteConn.Close();
}
}
class MobileInfo
{
publicstring MobileCode;
publicstring Province;
publicstring City;
publicstring AreaCode;
publicstring PostCode;
publicstring CorpName;
publicstring CardName;
}
}
打算在PSP上做应用
所以使用的sqlite.
开了10个线程,暂时先跑130到139段
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Data;
using System.Data.SQLite;
namespace GetMobileData
{
class GetData
{
publicvoid Get()
{
for (int i =0; i <=9; i++)
{
new Thread(new ParameterizedThreadStart(GetThread)).Start(i);
}
//List<MobileInfo> mInfos = new List<MobileInfo>();
}
privatevoid GetThread(object obj)
{
int nMobileBase =1300001;
int nOffset =1300000;
int i = (int)obj;
nMobileBase += i *10000;
nOffset += i *10000+9999;
for (int j = nMobileBase; j < nOffset; j++)
{
MobileInfo mInfo =new MobileInfo();
mInfo.MobileCode = j.ToString();
MobileService.Mobile mobileSrv =new MobileService.Mobile();
Console.WriteLine("正在查询"+ j);
mobileSrv.Query(j.ToString() +1234, out mInfo.Province, out mInfo.City, out mInfo.AreaCode, out mInfo.PostCode, out mInfo.CorpName, out mInfo.CardName);
Console.WriteLine("正在保存"+ j);
SaveToDB(mInfo);
}
}
privatevoid SaveToDB(MobileInfo mInfo)
{
SQLiteConnection liteConn =new SQLiteConnection("Data Source=E:\\UtilData\\mobile;Version=3;New=True;");
liteConn.Open();
string sSql ="INSERT INTO m_mobile_data (cMobileCode,cProvince,cCity,cAreaCode,cPostCode,cCorpName,cCardName)"+
"VALUES(@MobileCode,@Province,@City,@AreaCode,@PostCode,@CorpName,@CardName)";
SQLiteCommand liteCmd =new SQLiteCommand(liteConn);
liteCmd.CommandText = sSql;
//liteCmd.Parameters.
SQLiteParameter litePara =new SQLiteParameter();
litePara.ParameterName ="MobileCode";
litePara.DbType = DbType.String;
litePara.Value = mInfo.MobileCode;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="Province";
litePara.DbType = DbType.String;
litePara.Value = mInfo.Province;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="City";
litePara.DbType = DbType.String;
litePara.Value = mInfo.City;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="AreaCode";
litePara.DbType = DbType.String;
litePara.Value = mInfo.AreaCode;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="PostCode";
litePara.DbType = DbType.String;
litePara.Value = mInfo.PostCode;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="CorpName";
litePara.DbType = DbType.String;
litePara.Value = mInfo.CorpName;
liteCmd.Parameters.Add(litePara);
litePara =new SQLiteParameter();
litePara.ParameterName ="CardName";
litePara.DbType = DbType.String;
litePara.Value = mInfo.CardName;
liteCmd.Parameters.Add(litePara);
liteCmd.ExecuteNonQuery();
liteConn.Close();
}
}
class MobileInfo
{
publicstring MobileCode;
publicstring Province;
publicstring City;
publicstring AreaCode;
publicstring PostCode;
publicstring CorpName;
publicstring CardName;
}
}
打算在PSP上做应用
所以使用的sqlite.
开了10个线程,暂时先跑130到139段
相关文章推荐
- 利用webservice获取所有手机号归属地
- 调用WebService获取手机号的归属地
- Android 利用 Webservice 获取手机号码归属地
- [Python]利用ricequant获取上证指数以及所有股票历史价格数据
- Java 利用 svnKit 操作SVN 【获取所有文件夹、添加文件、文件下载】
- Java利用递归思想遍历指定目录,获取所有的文件
- 用Java解析手机号获取手机信息(归属地、Sim卡类型、移动或是联通、区号、邮编)
- android如何利用基于Http 协议的WebService服务来获取远程数据库数据
- 调用第三方webservice服务,获取电话号码归属地简单例子
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- 【webservice】获取省份下所有城市的天气状况
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- Python爬虫(二)--利用百度地图API批量获取城市所有的POI点
- 利用Python获取ZOJ所有题目的名字
- 获取手机号运营商及归属地的免费API
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- 调用webservice获取电话号码归属地信息
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- Js 利用正则表达式和replace函数获取string中所有被匹配到的文本(推荐)
- JAVA基础 day22 File类的方法和应用 利用递归获取目录下的所有文件 Properties类的应用(和IO技术结合,存取配置文件) 打印流和合并流等功能类的学习应用 切割文件练习