C# 获取外网IP和运营商和城市
/// <summary>
/// 获取客户端外网IP,省份,城市,运营商
/// 2012年12月18日 15:07
/// </summary>
public class GetOutMessage
{
/// <summary>
/// 获取全部信息
/// </summary>
/// <returns>一段网页代码</returns>
private static string getOutMessage()
{
WebClient client = new WebClient();
client.Credentials = CredentialCache.DefaultCredentials;
client.Headers.Set("User-Agent", "Microsoft Internet Explorer");
client.Encoding = System.Text.Encoding.Default;
string response = client.UploadString("http://iframe.ip138.com/ipcity.asp", "");
Match mc = Regex.Match(response, @"location.href=""(.*)""");
response = client.UploadString(mc.Groups[1].Value, "");
return response;
}
/// <summary>
/// 外网IP
/// </summary>
/// <returns>外网IP地址</returns>
public static string getOutIp()
{
string response = getOutMessage();
int i = response.IndexOf("[") + 1;
string ip = response.Substring(i, 14);
string ips = ip.Replace("]", "").Replace(" ", "");
return ips;
}
/// <summary>
/// 省份
/// </summary>
/// <returns>省份</returns>
public static string getOutProvince()
{
string response = getOutMessage();
int i = response.IndexOf("自") + 2;
string province = response.Substring(i, response.IndexOf("省") - i + 1);
return province;
}
/// <summary>
/// 城市
/// </summary>
/// <returns>城市</returns>
public static string getOutCity()
{
string response = getOutMessage();
int i = response.IndexOf("省") + 1;
string city = response.Substring(i, response.IndexOf("市") - i + 1);
return city;
}
/// <summary>
/// 运营商
/// </summary>
/// <returns>运营商</returns>
public static string getOutProvider()
{
string response = getOutMessage();
int i = response.IndexOf("市") + 2;
string provider = response.Substring(i, 2);
return provider;
}
}
C# 获取外网IP和运营商和城市的更多相关文章
- c#获取外网IP地址的方法
1.如果你是通过路由上网的,可以通过访问ip138之类的地址来获取外网IP 2.如果是通过PPPOE拨号上网的,可以使用以下代码获取IP //获取宽带连接(PPPOE拨号)的IP地址,timeout超 ...
- Curl之获取外网IP
获取外网IP:curl -s ifconfig.me
- .NET记录-获取外网IP以及判断该IP是属于网通还是电信
在工作时,需要获取服务器公网IP(外网IP),并且判断该IP地址是属于网通还是电信.花时间整理一下,自己实现的代码,以及后续遇到的问题. /// <summary> /// 获取外网IP ...
- Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer 关于Newtonsoft.Json,LINQ to JSON的一个小demo mysql循环插入数据、生成随机数及CONCAT函数 .NET记录-获取外网IP以及判断该IP是属于网通还是电信 Guid的生成和数据修整(去除空格和小写字符)
Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer Advanced Installer :Free for 30 da ...
- C#获取外网IP、本机MAC地址及Ping的实现
原文 获取外网IP, C#获取本机的MAC地址,C#通过编程方式实现Ping 获取外网IP地址 思路是通过WebRequest连接一些网上提供IP查询服务的网站,下载到含有你的IP的网页,然后用正则表 ...
- JAVA 优先获取外网Ip,再获取内网Ip
1.获取内网Ip private String getLocalhostIp(){ String hostAddress = ""; try { InetAddress addre ...
- linux获取外网ip
引言:目前获取ip的方法中,ifconfig和ip获取函数得到的都是内网ip.有时候需要获取外网ip,目前通用的做法,是向外部服务器发送请求,解析外部服务器响应,从而得到的自己的外网ip.linux下 ...
- java获取外网ip地址
转自:http://blog.163.com/houjunchang_daxue/blog/static/13037938320134543310451/ /** * 获取外网IP.归属地.操作系统 ...
- C# 获取外网IP地址
很多情况下我们需要获取外网的IP地址,一般用自带的方法获取到的都是不准确,往往获取到的是内网的IP地址,所以需要采用外部网站接口来获取. 代码 通过访问第三方接口来获取真实的ip地址 public s ...
随机推荐
- meaven环境变量配置
首先,先到官网去下载maven.这里是官网的地址:http://maven.apache.org/download.cgi 请选择最新的版本下载,这里咱们下载的是apache-maven-3.1.1 ...
- m*n matrix min rank square matrix
m*n matrix m*n=1000 f(A)=25 https://www.cs.princeton.edu/courses/archive/spring12/cos598C/svdchapter ...
- Android笔记之动态地添加View
使用ViewGroup.addView(View)可动态添加部件,ViewGroup.removeAllViews()用于移除所有部件 示例如下 MainActivity.java package c ...
- 【docker】开启remote api访问,并使用TLS加密
背景: docker默认是能使用本地的socket进行管理,这个在集群中使用的时候很不方便,因为很多功能还是需要链接docker服务进行操作,docker默认也可以开启tcp访问,但是这就相当于把整个 ...
- 最受欢迎的牛 usaco
题面网上到处都是: 主要来谈谈怎么做,首先利用tarjan求强连通分量缩点,缩点后找到出度为0的点,若不止一个,则输出0,否则输出这个点包含的缩点前的点的个数: 为什么这么做,是由这道题的问法决定的, ...
- HDU 2037 今年暑假不AC ( 起始与终止时间 【贪心】)
今年暑假不AC Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- 打造vim成类source insight
一.Ubuntu14.04下配置 1.配置vimrc文件 输入:version课查看vimrc文件及位置: system vimrc file: "$VIM/vimrc" user ...
- 关于for 循环里 线程执行顺序问题
最近在做项目时遇到了 这样的需求 要在一个for循环里执行下载的操作, 而且要等 下载完每个 再去接着走循环.上网查了一些 觉得说的不是很明确.现在把我用到的代码 贴上 希望可以帮到有此需求的开发者 ...
- selenium中类名不能与方法名相同
不要将selenium中的类名命名成需要用到的方法名,不然会报错!
- listen and translation exercise 52
Two years ago my husband bought me a bicycle. Twenty of the thirty-five years I ran my own business. ...