如何通过URL获取网页中的一些信息

最近有个需求就是如何通过一个URL获取该网页源代码中的一些信息,网上查阅了一些方法,发现有个叫JSOUP的东东可以实现我们的需求。

JSOUP介绍

摘一段百度百科中的简介:jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

具体可自行百度,介绍的应该还是挺详细的。

JSOUP开发指南:http://www.open-open.com/jsoup/

如何使用JSOUP

JSOUP的使用非常简单,首先我们需要下载JSOUP的jar包,我这里用的是jsoup-1.7.3.jar,网上可供下载的地方也比较多,这里就不共享jar包了。

好了,下载了以后把jar包复制到我们工程的libs目录下就可以了,下面举个简单的例子介绍如何使用:

代码片段:

Document doc;
try {
    doc = Jsoup
	      .connect(final_url)
	          .header("User-Agent",
                      "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2")
		          .get();
    itemid = doc.getElementById("dsr-userid").val();
} catch (IOException e) {
// TODO Auto-generated catch block
    e.printStackTrace();
}

首先定义了一个Document对象,DOM(文档对象模型)是前端中一个比较重要的概念,有兴趣的朋友可以去了解了解,然后就是通过jsoup将网页的源码内容读取出来,其中final_url就是代表你需要访问的网址。

getElementById("dsr-userid").val()
这一行代码中的该部分是javascript中的语法,意思是获取id名为“dsr-userid”的控件的值


如上图所示,这样itemid的值就是92688455。

好了,通过这样一个例子,简单的jsoup操作就实现了,更多的方法就需要大家去查阅上面提供的帮助文档去完成啦!!!

你可能感兴趣的:(android开发)