C#获取IP归属地【使用抓取网页内容方式】
通过IP获取归属地,例:用户登录时获取IP,在调用下面的方法,即可返回IP归属地@.NET--小白
此方法是通过IP查询归属地网站的GET方式,发送请求IP,并使用正则表达式抓取返回的归属地
首先:引用命名空间:
using System.Net;
using System.IO;
using System.Text.RegularExpressions;
第二:代码
/// <summary>
/// 获取IP归属地
/// </summary>
/// <param name="Ip">IP地址</param>
/// <returns></returns>
public string GetIpAddRess(string Ip)
{
WebRequest request = WebRequest.Create("http://www.ip138.com/ips138.asp?ip=" + Ip);
WebResponse response = request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("gb2312"));
string read = reader.ReadToEnd();
Regex regex = new Regex("<td align=\"center\"><ul class=\"ul1\"><li>本站主数据:(?<title>.*?)</li>");
if (regex.IsMatch(read))
{
read = regex.Match(read).Groups["title"].Value;
}
return read;
}
仅仅这个方法就够了,在哪需要就在哪调用就行了,winform asp.net都能用
楼主做了个测试方法的winform
如图:
源码下载:
**** Hidden Message *****
顶下, 这个不错、 IP查询归属地网站的GET方式,发送请求IP,并使用正则表达式抓取返回的归属地
我上火了,,,,,感谢楼主百忙之中给予的帮助!!赏你一百个金币 .NET--小白 发表于 2014-4-10 09:16
我上火了,,,,,感谢楼主百忙之中给予的帮助!!赏你一百个金币
3... 什么叫上火了... 看看源代码 看看支持一下! 顶了 :o膜拜Ing