HOW TO:利用Excel的QueryTable下载网上数据

Author: 水如烟
总目录: 行政区划数据方案设计

这里所说的网上数据,是基于:
一、有固定网址发布最新数据的链接;
二、数据格式固定。

在去年的10月,曾写了个《全国县及县以上行政区划代码信息类 》
见: http://www.cnblogs.com/LzmTW/archive/2005/10/22/260066.html

现在仍以行政区划代码数据为例。

行政区划代码数据由国家统计局发布,网址为
http://www.stats.gov.cn/tjbz/xzqhdm/index.htm
数据格式是固定的:
如最新的为2005年12月31日
http://www.stats.gov.cn/tjbz/xzqhdm/t20041022_402301029.htm
最旧的为2001年10月的,
http://www.stats.gov.cn/tjbz/xzqhdm/t20021125_46781.htm

但是有例外,这在代码中说。

方案组织:
效果:


以下为代码:
NetConst.vb
Namespace  NET
    
Public   Class  NetConst
        
Private   Sub   New ()
        
End Sub

        
Public   Const  GOV_DEFAULT  As   String   =   " www.stats.gov.cn "
        
Public   Const  GOV_ADDRESS  As   String   =   " http://www.stats.gov.cn/tjbz/xzqhdm/ "
        
Public   Const  WEBTABLE_INDEX  As   String   =   " 9 "
    
End Class
End Namespace
NetInformation.vb
Imports  System.Net
Imports  System.IO
Imports  System.Text.RegularExpressions

Namespace  NET
    
Public   Class  NetInformation
        
Private  gNetUpdateInformations( - 1 As  NetUpdateInformationItem


        
Public   ReadOnly   Property  UpdateInformationsTable()  As  DataTable
            
Get
                
Return  GetUpdateInformationsTable()
            
End   Get
        
End Property

        
Private   Function  GetUpdateInformationsTable()  As  DataTable
            
Dim  mDataTable  As   New  DataTable( " UpdateInformations " )
            
With  mDataTable
                .Columns.Add(
" Address " )
                .Columns.Add(
" LastDate " )
                
For   Each  item  As  NetUpdateInformationItem  In  gNetUpdateInformations
                    .Rows.Add(
New   String () {item.Address, item.LastDate})
                
Next
                .AcceptChanges()
            
End   With
            
Return  mDataTable
        
End Function

        
Public   Sub  DownloadInformationsFromNet()

            
Dim  mRegex  As   New  Regex( " (?<date>2.*日) " )

            
Dim  mNetUpdateItems  As  NetUpdateItem()  =  GetNetUpdateItems()
            
Dim  mNetUpdateInformationItem  As  NetUpdateInformationItem

            
Dim  tmp  As  NetUpdateItem
            
'
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值