zoukankan      html  css  js  c++  java
  • 获取ip地址以及获取城市等信息

    class Program
        {
            static void Main(string[] args)
            {
                string ip = GetIP();
                if (ip != null)
                {
                    string city = GetCityByIP(ip);
                    Console.WriteLine("解析的城市名称为 = " + city);
                }
                Console.ReadKey();
            }
    
            static string GetIP()
            {
                string result = GetWebContent("http://city.ip138.com/ip2city.asp");
                if (result != null)
                {
                    int start = result.IndexOf("[") + 1;
                    int end = result.LastIndexOf("]");
                    string ip = result.Substring(start, end - start);//找出ip
                    return ip;
                }
                return null;
            }
    
            static string GetCityByIP(string ip)
            {

            string url = "http://ip.taobao.com/service/getIpInfo.php?ip=" + ip;
            string content = GetWebContent(url);
            if (content != null)
            {
              JsonData res = JsonMapper.ToObject(content);
              if (res != null && res.Count == 2)
              {
                int status = Convert.ToInt32(res["code"].ToString());
                if (status == 0)
                {
                  JsonData js = res["data"];
                  string city = js["city"].ToString();
                  return city;
                }
              }
            }
            return null;

            }

      static string GetWebContent(string url)
            {
                try
                {
                    System.Net.WebClient wc = new System.Net.WebClient();
                    wc.Credentials = System.Net.CredentialCache.DefaultCredentials;
                    return wc.DownloadString(url);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("GetWebContent 发生了错误:" + ex.Message);
                    return null;
                }
            }
        }
  • 相关阅读:
    最全的项目
    最全的liunx系统修改root用户密码
    最全docker安装步骤
    最全的ideal 常 用 的 快 捷
    最全的ideal 常用的快捷
    ftp路径
    站点路径
    sublime text3 切换中文方法
    UI设计: PS 快捷键 Ctrl+Shift+alt+T,旋转复制
    SQL中表与表的简单关系
  • 原文地址:https://www.cnblogs.com/MrZivChu/p/ipcity.html
Copyright © 2011-2022 走看看