说明:

(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];

           

        }

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

C# 获取网页数据、获取本机IP 分类: C# 2014-12-16 14:59 308人阅读 评论(0) 收藏的更多相关文章

  1. Java获取项目中的路径 分类: Java Game 2014-08-14 10:17 122人阅读 评论(0) 收藏

    在项目中经常需要获取某个文件的路径: 在这里提供一些获取路径的方法.. 1.此种方式获取的路径,是当前类所在的路径: UserDAOTest.class.getResource("UserD ...

  2. 获取文件路径 分类: WinForm 2014-07-25 14:27 103人阅读 评论(0) 收藏

    //可获得当前执行的exe的文件名. string str1 =Process.GetCurrentProcess().MainModule.FileName; //获取和设置当前目录(即该进程从中启 ...

  3. winform Execl数据 导入到数据库(SQL) 分类: WinForm C# 2014-05-09 20:52 191人阅读 评论(0) 收藏

    首先,看一下我的窗体设计: 要插入的Excel表: 编码 名称 联系人 电话 省市 备注 100 100线 张三 12345678910 北京 测试 101 101线 张三 12345678910 上 ...

  4. iOS开发:创建真机调试证书 分类: ios相关 2015-04-10 10:22 149人阅读 评论(0) 收藏

    关于苹果iOS开发,笔者也是从小白过来的,经历过各种困难和坑,其中就有关于开发证书,生产证书,in_house证书,add_Hoc证书申请过程中的问题,以及上架发布问题.今天就着重说一下关于针对于苹果 ...

  5. MS SQL数据批量备份还原(适用于MS SQL 2005+) 分类: SQL Server 数据库 2015-03-10 14:32 103人阅读 评论(0) 收藏

    我们知道通过Sql代理,可以实现数据库的定时备份功能:当数据库里的数据库很多时,备份一个数据库需要建立对应的定时作业,相对来说比较麻烦: 还好,微软自带的osql工具,比较实用,通过在命令行里里输入命 ...

  6. irms模拟数据生成及数据分析 分类: H_HISTORY 2015-03-06 14:17 212人阅读 评论(0) 收藏

    一.数据准备 1.每天生成随机一个文本,每小时向文本中追加2次数据,每次10万条 随机数据生成: 2,32  * * * *  bash /mnt/jediael/irms/signalGenerat ...

  7. 跨服务器修改数据 分类: SQL Server 2014-08-21 21:24 316人阅读 评论(0) 收藏

     说明: 两个服务器: 192.168.0.22   A 192.168.0.3     B 数据库备份在A上 数据库在B上 在A上写: exec sp_addlinkedserver   'ITSV ...

  8. 使用URLConnection获取网页信息的基本流程 分类: H1_ANDROID 2013-10-12 23:51 3646人阅读 评论(0) 收藏

    参考自core java v2, chapter3 Networking. 注:URLConnection的子类HttpURLConnection被广泛用于Android网络客户端编程,它与apach ...

  9. DateTime日期格式获取 分类: C# 2014-04-15 10:36 233人阅读 评论(0) 收藏

    c#.net 获取时间年月日时分秒格式 //获取日期+时间 DateTime.Now.ToString();            // 2008-9-4 20:02:10 DateTime.Now. ...

随机推荐

  1. Android中解析XML的方法

    假设我要解析如下的XML文件: <?xml version="1.0" encoding="UTF-8"?> <books> <b ...

  2. ecmall 后台导航增加菜单

    以我增加的团购为例: languages\sc-gbk\admin 中的default.lang.php 文件中底部增加变量值 'groupbuy'=>'团购',    'groupbuyord ...

  3. Java学习----不该初始化的class(抽象类)

    1. 抽象类声明有abstract 2.抽象类中有抽象方法,没有方法体的方法 // 抽象类 public abstract class Animal { public String name; pub ...

  4. bootstrap上传表单的时候上传的数据默认是0 一定要小心

    bootstrap上传表单的时候上传的数据默认是0 一定要小心

  5. IntelIoT技术笔记Java/Eclipse

    1. 获取最新版本 使用"Team sync perspective",如果想要看到全部工程的差异,选择全部工程,右键-Team-sync with Repository:将会自动 ...

  6. Java实现http服务器(一)

    基于Java实现Http服务器有多种多样的方法 一种轻量级的方式是使用JDK内置的com.sun.net.httpserver包下和sun.net.httpserver包下类提供的方法构建,该方法轻便 ...

  7. BASLER 镜头选型白皮书

    本文翻译自Basler镜头选型白皮书 有许多方法来进行镜头选型.本文将会讨论其中的指导原则,以帮助你在项目中选择合适的镜头.我们将讨论许多镜头的基本概念,比如镜头接口.图像大小.放大率.焦距.F数和光 ...

  8. 打log

    如果项目上过线的话,那你一定知道Log是多么重要. 为什么说Log重要呢?因为上线项目不允许你调试,你只能通过Log来分析问题.这时打一手好Log的重要性绝不亚于写一手好代码.项目出问题时,你要能拿出 ...

  9. Netty高性能之道

    1. 背景 1.1. 惊人的性能数据 最近一个圈内朋友告诉我,通过使用Netty4 + Thrift压缩二进制编解码技术,他们实现了10W TPS(1K的复杂POJO对象)的跨节点远程服务调用.相比于 ...

  10. win7系统VPN设置

    为了解除公司上网策略限制,或者为了上Google,Facebook,都可以通过设置VPN实现. 要使用VPN需要到VPN服务商注册,链接VPN服务商. ======================== ...