<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="jdbcUrl" value="${url}" />
<property name="driverClass" value="${driver}" />
<property name="user" value="${username}" />
<property name="password" value="${password}" />
<property name="minPoolSize" value="5" />
</bean>
许多配置文件都是.xml结尾的,比如说上面的最常见spring.xml文件,要想解析这个文件,找到需要的节点上的属性的值,就要使用dom4j的SAXReader类
在dom4j包下有一个专门解析xml文件的类SAXReader
解析过程:
//要解析的xml文件的地址
File file = new File("F:\\workspase\\JsoupParse\\src\\spring.xml");
//创建解析工具
SAXReader reader = new SAXReader();
//读取xml文件,并返回一个document对象
Document document =reader.read(file);
//得到document文档的根元素
Element root=document.getRootElement();
//获取根元素root上的package的元素
Element pa=root.element("bean");
//获取这个元素的name属性值
System.out.println(pa.attributeValue("class"));
//从root根元素这个位置开始循环遍历
List<Element> eles=root.elements();
jsoup
jsoup和xpath都可以解析这种结构式文件,jsoup比xpath解析起来更加灵活,jsoup是用的jquery那一套语法,语法清晰易懂。下面是我的测试程序,一看就明白.
package com.testjsoup;
import java.io.File;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class JsoupTest {
public static void main(String[] args) throws Exception{
Document d=Jsoup.parse(new File("spring.xml"),"UTF-8");//必须使用这种方式解析
Element content = doc.getElementById("dataSource");//根据id查找
Elements links = content.getElementsByTag("bean ");//根据标签查找
for(Element el:d.select("bean")){
System.out.println("属性:"+el.select("property").text())
}
}
}
jsoup最大的威力其实不是解析.xml文件,而是爬取.html中的符合业务需求的信息。一般用在lucene或者solr项目当中。
分享到:
相关推荐
dom4j,jsoup,jdom,w3cdom,xstream使用代码工程 package ivyy.taobao.com.dom4j; import ivyy.taobao.com.entity.Address; import ivyy.taobao.com.entity.Location; import ivyy.taobao.com.entity.Point; import ...
JSoup 将网页内容解析为一个复杂的 DOM 树结构,使得开发者可以通过 CSS 选择器或者直接的节点遍历来查找、提取和修改数据。 例如,要从一个网页中抓取所有的段落(`<p>` 标签),你可以使用以下 JSoup 代码: ```...
`commons-logging-1.1.3.jar`是Apache Commons Logging库,提供一个简单的接口来记录日志信息,同时可以适配多种底层日志实现,如log4j或java.util.logging。 `httpmime-4.3.4.jar`是HttpClient的一个扩展,提供了...
### 4. 应用场景 - **Web抓取**:jsoup是抓取和分析网页内容的理想工具,尤其适用于简单的数据抓取任务,如获取商品价格、新闻标题等。 - **数据提取**:在爬虫项目中,jsoup可以帮助提取结构化数据,如用户评论、...
这一步骤可能涉及到XPath或XSLT,尽管这些不是JSoup内置的功能,但可以通过集成其他Java XML库(如JAXB或DOM4J)实现。 4. **转化结果为HTML**:最后,校验的结果可能以HTML的形式呈现,以便用户能以友好的格式查看...
Simple Logging Facade for Java (SLF4J) 提供一个简单统一的接口,允许最终用户在部署他们的应用时插入所需的日志框架。在JsoupXPath中,这个库用于日志记录,帮助开发者追踪程序运行时的状态和错误信息,便于调试...
1. **解析HTML**:Jsoup能够将HTML代码解析为一个可操作的DOM树结构,方便开发者遍历和提取数据。 2. **CSS选择器**:Jsoup支持CSS选择器,使得选取HTML元素变得简单,类似于在浏览器中使用开发者工具操作网页。 3. ...
Jsoup是一款Java库,设计用于处理HTML和XML文档,它提供了非常方便的API来抓取、解析、修改以及清理HTML...然而,如果需要更高级的XML处理功能,如XPath表达式支持,可能需要考虑使用更专业的XML库,如JAXB或DOM4J。
然而,对于复杂的XML文档,可能需要更专业的库如JDOM或DOM4J。 ```java Document doc = Jsoup.parse(xmlString, "text/xml", "", Parser.xmlParser().namespaceAware(true)); ``` ### 5. 性能优化 对于大量XML...
总的来说,Jsoup在Java爬虫中的作用是解析和提取HTML数据,而数据库(如通过JDBC)用于持久化抓取的数据,日志系统(如Log4j)则帮助监控和调试爬虫行为。通过结合这三个方面,可以构建出高效、可维护的网络数据抓取...
6. **日志处理**:可能使用Log4j、SLF4J等日志框架,记录爬虫的运行情况。 **集成MySQL** 在项目中,使用MySQL作为数据存储,可以通过Spring Data JPA或MyBatis进行数据操作。需要在`pom.xml`中添加MySQL的依赖,...
2. **commons-logging-1.2.jar**:这是Apache Commons Logging库,提供了一个接口层,使得应用程序可以使用多种日志框架,如Log4j、Java内置的日志等。在网络爬虫中,日志记录对于调试和监控爬虫行为至关重要。 3. ...
使用httpclient,jsoup,dom4j,json-lib,SWT创建的可下载小说的网络爬虫项目。 软件开发设计:应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等语言的项目开发与学习资料 硬件与...
这个DOM树与浏览器解析HTML的方式类似,允许我们通过CSS选择器来定位我们需要的数据。例如,我们可以使用`select()`方法来选取特定的HTML元素,如`doc.select("h1")`将获取页面上的所有一级标题。 Jsoup还提供了...
本文将深入探讨四个流行的Java解析库:Fastjson、Dom4j、Jdom和Jsoup,它们各自具有独特的优势和适用场景。 首先,Fastjson是阿里巴巴开源的一个高性能的JSON库。它提供了极简的API,使得在Java对象和JSON数据之间...
6. **深度限制与并发控制**:`crawler4j`允许设置爬取深度和并发度,以防止过度负载目标服务器。 7. **配置文件**:`src`目录下的配置文件(如`config.properties`)用于设定爬虫的参数,如启动的爬虫线程数、请求...
api-1.5.10、log4j-1.2.15、json-lib-2.2.3-jdk13、gson-2.2.4、ezmorph-1.0.6、dom4j-1.6.1、commons-logging-1.0.4、commons-lang-2.3、commons-collections-3.2.1、commons-beanutils-1.7.0、jsoup-1.6.2、...
import org.jsoup.Jsoup; import org.jsoup.nodes.Document; Document doc = Jsoup.connect("http://example.com").get(); Elements elements = doc.select("div.someClass"); ``` 2. **HTMLParser** - 这是一个...
jsoup是一款Java库,专门用于解析HTML,它提供了简洁的API,让我们能够方便地通过DOM、CSS选择器以及类似jQuery的方式来操作HTML内容。本文将手把手教你如何在Android项目中使用jsoup解析HTML。 首先,了解jsoup的...
使用httpclient,jsoup,dom4j,json-lib,SWT创建的可下载小说的网络爬虫项目。 爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫...