使用WebService实现IP归属地查询源码

邹俊豪
2023-12-01
    程序中有时要用到查询IP地址归属地的问题,在网上查了一下,大部分是使用IP地址库来实现,但IP地址库的更新不是实时,通过对一些IP地址归属地查询网页的分析,采用Webservice的方式实现出来,免除了自已更新IP地址库问题!
  1. Imports System.Web
  2. Imports System.Web.Services
  3. Imports System.Web.Services.Protocols
  4. Imports System.Net
  5. <WebService(Namespace:="http://tempuri.org/")> _
  6. <WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
  7. <Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
  8. Public Class QueryService
  9.      Inherits System.Web.Services.WebService
  10.     ''' <summary>
  11.     ''' 
  12.     ''' </summary>
  13.     ''' <param 
  14.     <WebMethod()> Public Function QueryIP(ByVal ip As String) As String
  15.         Dim uri As New Uri("http://www.123cha.com/ip/?q=" + ip)
  16.         Dim req As WebRequest = WebRequest.Create(uri)
  17.         Dim sm As IO.Stream = req.GetResponse.GetResponseStream
  18.         Dim sr As New IO.StreamReader(sm, System.Text.Encoding.Default)
  19.         Dim html As String = sr.ReadToEnd
  20.         Dim resultStart, resultStop As Integer
  21.         Dim result As String
  22.         resultStart = html.IndexOf("本站主数据</font>: ") + "本站主数据</font>: ".Length
  23.         resultStop = html.IndexOf("<", resultStart)
  24.         result = html.Substring(resultStart, resultStop - resultStart)
  25.         Return result.Replace(" ", "")
  26.     End Function
  27. End Class
 类似资料: