C# 获取网页数据、获取本机IP 分类: C# 20...

说明:

(1) http://www.3322.org/dyndns/getip 这个网址可以获取本机IP,读取的内容就是本机IP

(2)方法经测试,可以实现。

(3)参考:http://www.cnblogs.com/ceachy/articles/CSharp_Retrive_Page_Document.html

两种方法:

(1)使用WebClient

        private static string GetIP(String url) {

                  WebClient MyWebClient = new WebClient();

                 //获取或设置用于对向Internet资源的请求进行身份验证的网络凭据。

                   MyWebClient.Credentials = CredentialCache.DefaultCredentials;

                 //从指定网站下载数据
                  Byte[] pageData = MyWebClient.DownloadData(url);

                 //网站页面采用的是GB2312
                 string pageHtml = Encoding.Default.GetString(pageData);

                //网站页面采用的是UTF-8
                //string pageHtml = Encoding.UTF8.GetString(pageData); 

               return pageHtml;
        }

(2)使用WebBrowser

            WebBrowser web = new WebBrowser();

            web.Navigate("http://www.3322.org/dyndns/getip");

            web.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(web_DocumentCompleted);

           //获取网页上的内容
           void web_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) {

            WebBrowser web = (WebBrowser)sender;

            HtmlElementCollection ElementCollection = web.Document.GetElementsByTagName("Body");

            foreach (HtmlElement item in ElementCollection) {

                ipstr += item.InnerText;

            }
        }

备注:

win7获取内网IP:

           IPHostEntry ipe = Dns.GetHostEntry(Dns.GetHostName());
            IPAddress ipa = ipe.AddressList[2];
            string myIp = Convert.ToString(ipa);


根据IP获取所在地:

  WebBrowser web = new WebBrowser();
            web.Navigate("http://www.cz88.net/ip/index.aspx?ip="+myIP);
            web.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(web_DocumentCompleted);

         /// <summary>
        /// 获取用户所在地 方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void web_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) {
            WebBrowser web = (WebBrowser)sender;
            //获取所在地
            HtmlElement heAddress = web.Document.GetElementById("cz_addr");
            //获取操作系统
            //HtmlElement heSystem = web.Document.GetElementById("cz_opt");  
            string[] abc = heAddress.InnerText.Split(' ');
            lblAddress.Text = abc[0];
           
        }

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/Jackerson/p/4631987.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值