WebResponse 取出全国省市区的邮编
WebResponse用法(根据省市区地址查询其邮编):
class Program
{
static string url { get; set; }
static void Main(string[] args)
{
StringBuilder sb = new StringBuilder();
try
{
SqlConnection conn = new SqlConnection("自己的数据库连接语句");
SqlDataAdapter da = new SqlDataAdapter("查询语句", conn);
DataSet ds = new DataSet();
Random rd = new Random();
da.Fill(ds);
url = "http://opendata.baidu.com/post/s?wd={0}&rn=20";//请求地址
for (int i = ; i < ds.Tables[].Rows.Count; i++)
{
var row = ds.Tables[].Rows[i];
string keyworder = row["ProvinceName"] + " " + row["CityName"] + " " + row["DistrictName"];
sb.Append(GetZipCodeSql(keyworder, row["SysNo"].ToString())); Thread.Sleep(rd.Next(, ));//延时
if (i != && i % == )
{
WriteTxt(sb.ToString()); sb.Clear();
}
else if (i == ds.Tables[].Rows.Count - )
{
WriteTxt(sb.ToString()); sb.Clear();
}
}
}
catch (Exception ex)
{
System.Console.WriteLine(ex.Message);
}
}
private static void WriteTxt(string text)
{
StreamWriter sw = File.AppendText("D:\\3.txt");//保存输出的位置
sw.Write(text);
sw.Close();
}
//得到邮编
private static string GetZipCodeSql(string keyworder, string sysNo)
{
StringBuilder sb = new StringBuilder();
try
{
HttpWebRequest httpweb = (HttpWebRequest)WebRequest.Create(
new Uri(string.Format(url, HttpUtility.UrlEncode(keyworder, System.Text.Encoding.GetEncoding("GBK"))))
);
WebResponse respon = httpweb.GetResponse();
StreamReader reader = new StreamReader(respon.GetResponseStream(), Encoding.GetEncoding("GBK"));
string html = reader.ReadToEnd();
int statrtIndex = ;
int end = ;
string code = "";
statrtIndex = html.IndexOf("<ul><!-- baidu-tc begin -->");
if (statrtIndex > )
{
end = html.IndexOf("</a>", statrtIndex);
statrtIndex = html.LastIndexOf("</em>", end);
code = Regex.Replace(html.Substring(end - , ), @"[^0-9]", "");
//code = html.Substring(end - 6, 6);
sb.AppendFormat("UPDATE area SET ZipCode ={0} WHERE SysNo={1};\r\n", code, sysNo);
}
respon.Close();
}
catch (Exception)
{
url = "http://opendata.baidu.com/post/s?wd={0}&p=mini&rn=20";
GetZipCodeSql(keyworder, sysNo);
} return sb.ToString();
}
}
WebResponse 取出全国省市区的邮编的更多相关文章
- Mysql学习---全国省市区以及邮编数据库
更多下载
- 三级联动查询全国省市区(xml与数据库)
提供有china.xml和china.sql文件,实现全国省市区的三级联动效果 一.xml实现 import java.awt.EventQueue; import javax.swing.JFram ...
- PHP全国省市区地址分割提取脚本程序
github地址: https://github.com/zmxfree/addressapart 比如将 浙江省杭州市江干区XX路X号 分割成 浙江省 杭州市 江干区 XX路X号,方便excel操作 ...
- selenium,webdriver,xpath获取全国各地的邮编
代码要多敲 注释要清晰 其中区号没有拿取出来 看到的朋友可以作为练习 ,有好的方法可以在下面留言 from selenium import webdriver from lxml import etr ...
- 省市区三级联动(附j全国省市区json文件)
效果如图所示: 首先提供全国所有省份的JS文件 下载地址:https://files.cnblogs.com/files/likui-bookHouse/address.rar 打开js内容如下: h ...
- jquery全国省市区三级联动插件distpicker
使用步骤: 1.引入js <script src="distpicker/jquery.min.js" type="text/javascript" ch ...
- js 实现全国省市区三级联动
效果: index.html <!DOCTYPE html> <html> <head> <meta charset="utf-8" /& ...
- 全国省市区三级联动js
function Dsy(){ this.Items = {}; } Dsy.prototype.add = function(id,iArray){ this.Items[id] = iArray; ...
- 全国省市区Json文件 ,做省市区联动很轻松
省份 [{"name":"安徽省", "code":"340000"},{"name":" ...
随机推荐
- Android Activity切换动画overridePendingTransition
Activity在切换或者是退出的时候能够使用渐入,滑动,缩放等动态效果.使用的就是方法overridePendingTransition,能够直在Activity其中直接调用. overridePe ...
- 关于Vim的问题s
2013-11-23 17:29:45 1.关于.swp文件 swap对于保护非正常退出是有好处的,但从最开始使用vim就发现的一个问题十分恼火!非正常退出再进入后选择了恢复R,然后编辑正常保存正常退 ...
- Java网页数据采集器[中篇-数据存储]【转载】
本期概述 上期我们学习了html页面的数据采集,为了方便我们今后来调用收集到的数据,首先我们需要学习下如何将这些采集到的数据存储起来(MySql数据库). 数据采集页面 2011-2012赛季英超球队 ...
- MyBatis之一:入门
一.什么是Mybatis 可以简单将mybatis理解为ibatis的升级版本,它是一个java的持久层框架,底层依赖jdbc接口,此持久层框架包含sql maps与data access objec ...
- MediaPlayer开发全解析
本文介绍MediaPlayer的使用.MediaPlayer可以播放音频和视频,另外也可以通过VideoView来播放视频,虽然VideoView比MediaPlayer简单易用,但定制性不如用Med ...
- Java_spring_定时执行任务
> 版本说明 <dependencies> <dependency> <groupId>org.springframework</groupId> ...
- 细说linux挂载——mount,及其他……
http://forum.ubuntu.org.cn/viewtopic.php?t=257333
- Scala中的构造器
Scala中的构造器 Scala中的构造器分为两类,主构造器和辅助构造器 主构造器是通过类名后面跟的括号里加参数列表来定义 辅助构造器是通过关键字this定义 定义一个无参主构造器 class rec ...
- memcached linux / win32 1.4.13
memcached-win32-1.4.13 点击下载 http://pan.baidu.com/s/1kTMABaf memcached -d install (安装为windows service ...
- javaweb学习总结十六(tomcat服务器的使用、虚拟目录的映射)
一:tomcat服务器的目录 1:目录结构 2:web应用程序介绍 二:虚拟目录的映射 假如我在E盘建立一个目录web,里面存放1.html文件,我想让外界访问 1:直接在conf目录下的server ...