`

htmlParser 解析Table

 
阅读更多

 

 

String monitorContent = "<TABLE style="WIDTH: 100%" id=MachineEnvInfo>
<TBODY>
<TR>
<TD class=th></TD>
<TD class=th>机房</TD>
<TD class=th>温度</TD>
<TD class=th>湿度</TD></TR>
<TBODY>
<TR>
<TD class=thh rowSpan=18>机房环境信息</TD>
<TD class=td><INPUT class=input value="21F 通信勤务机房" size=45 name=email></TD>
<TD class=td><INPUT class=input value=25.85 size=25 name=email></TD>
<TD class=td><INPUT class=input value=57.95 size=25 name=email></TD></TR>
<TR>
</TABLE>"

Parser parser = new Parser();

		try {
			parser.setInputHTML(monitorContent);
		} catch (ParserException e) {
			e.printStackTrace();
		}

		NodeList tableTags = parser.parse(new NodeClassFilter(TableTag.class));

		for (int i = 0; i < tableTags.size(); i++) {
			TableTag tableTag = (TableTag) tableTags.elementAt(i);
			NodeList childList = tableTag.getChildren();
			for (int j = 0; j < childList.size(); j++) {
				Tag childTag = (Tag) childList.elementAt(j);
				if (childTag.getTagName().equals("TR") || childTag.getTagName().equals("tr")) {
					NodeList tdList = childTag.getChildren();
					String macRoomName = "";
					String macRoomTemper = "";
					for (int k = 0; k < tdList.size(); k++) {
						Tag tdTag = (Tag) tdList.elementAt(k);
						if (tdTag.getTagName().equals("TD") || tdTag.getTagName().equals("td")) {

							if (k == tdList.size() - 4
									&& tdTag.getChildren().elementAt(0).getClass().getSimpleName().equals("InputTag")) {// 机房是input倒数第三个标签
								Tag macRoomTag = (Tag) tdTag.getChildren().elementAt(0);
								macRoomName = macRoomTag.getAttribute("value");
							}
							if (k == tdList.size() - 3
									&& tdTag.getChildren().elementAt(0).getClass().getSimpleName().equals("InputTag")) {// 温度是input倒数第二个标签
								Tag macRoomTemperTag = (Tag) tdTag.getChildren().elementAt(0);
								macRoomTemper = macRoomTemperTag.getAttribute("value");
							}
						}
					}
					
				}

 

 

 

          需要htmlParser.jar包,解析table里的<tbody><td>等标签 ,判断里面是否存在input标签,此时有定制功能

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    htmlparser

    org.htmlparser.tags.TableHeader.class org.htmlparser.tags.TableRow.class org.htmlparser.tags.TableTag.class org.htmlparser.tags.TextareaTag.class org.htmlparser.tags.TitleTag.class org.htmlparser.util...

    JAVA htmlparser 使用实例

    `HtmlParser`库为开发者提供了一种简便的方式来解析HTML文档,并从中提取所需的信息。本文将通过一个具体的例子来详细介绍如何在Java中使用`HtmlParser`库进行HTML文档的解析。 #### 示例背景 假设我们正在开发一...

    网络爬虫htmlparser

    然后,使用HTMLParser解析这个内容,查找包含基金数据的表格标签(如`&lt;table&gt;`),进一步找到表头(`&lt;th&gt;`)和数据单元格(`&lt;td&gt;`)。通过分析表格结构,可以提取出每行数据,并将其转换为"FundTableBean"实例。 在...

    Java使用HtmlParser实现简单的网络爬虫

    1. **HtmlParser库**:HtmlParser是一个强大的HTML解析器,它能够解析HTML文档,将其转换为一个可操作的节点树,方便开发者通过节点过滤和遍历来获取目标信息。这个库提供了多种节点类型(如TagNode、TextNode等)...

    基于Htmlparser的天气预报程序

    然后,利用Htmlparser解析这些HTML页面,定位到包含天气信息的特定HTML元素,如div、span或者table等。 在解析过程中,程序可能使用XPath或者CSS选择器来定位目标元素,或者直接通过标签名称、属性等信息进行查找。...

    HTMLParser抽取Web网页正文信息.doc

    HTMLParser是一种用于解析HTML文档的工具,特别适用于从Web网页中提取有用的信息。它能够有效地识别和解析HTML标签,帮助开发者从复杂的网页结构中抽取特定的数据。在实际应用中,HTMLParser不仅能够处理标准的HTML...

    用htmlparser分析并抽取正文

    HTMLParser 是一个用于解析HTML文档的Java库,它允许开发者以结构化的方式处理HTML内容,尤其是在没有DOM(Document Object Model)或XHTML可用时。在本文档中,我们将深入探讨如何利用HTMLParser来分析和抽取正文,...

    HTMLparser 测试代码

    HTMLparser是一种用于解析HTML文档的工具,它可以帮助开发者提取、分析或操作HTML页面中的数据。在Web开发中,HTMLparser通常被用在自动化任务、网页抓取或数据挖掘项目中。本篇将深入探讨HTMLparser的测试代码及其...

    HTMLParser抽取Web网页正文信息

    HTMLParser 是一个强大的工具,用于解析和分析HTML文档,它能帮助我们从网页中抽取主要信息,排除掉无关的导航、广告和版权等噪音内容。这不仅能够优化用户体验,节省浏览时间,还能提高用户获取信息的效率,进而...

    htmlparser下载网页

    HTMLParser 是一个用于解析 HTML 文档的 Java 库。它提供了一系列工具类来帮助开发者从 HTML 文件或网页中提取所需的信息。本篇文章将围绕一个具体的示例程序来详细探讨 HTMLParser 的使用方法。 #### 二、示例程序...

    python 最牛的解析html的方法

    class MyHTMLParser(HTMLParser.HTMLParser): def __init__(self): self.selected = ['html', 'body', 'table', 'head', 'meta', 'style', 'tr', 'td'] self.reset() self._level_stack = [] self.flag = True...

    将HTML转成text,横向表格用TAB分开

    首先,`HtmlParser.cpp`和`HtmlParser.h`是实现HTML解析的主要部分。在C++中,HTML解析通常涉及到字符串操作、正则表达式和DOM(Document Object Model)理解。`HtmlParser`类可能包含了解析HTML文档的方法,如读取...

    微信小程序-微信小程序渲染html

    &lt;table&gt;, , , 等表格标签 标签转`` HTML entities 七牛图片裁剪 自定义插件 不支持&lt;form&gt;, ,等表单元素. 使用方法 请参考pages/index目录里的文件. 拷贝html-view目录到你的项目. 在页面的js/wxml/wxss中, ...

    Java爬虫框架.pdf

    还包括了多种不同的解析技术,如“HTML SAX”,“nekohtml”,“HTMLParser”和“Regex”,这显示了框架提供了多种解析方式以适应不同需求。 5. Handler(处理器): 处理器是用于处理解析后数据的组件。文件中...

    jsoup攫取你所需的信息

    jsoup的出现弥补了传统HTMLParser库更新不及时的问题,为开发者提供了更加高效、稳定且功能丰富的解决方案。 ### 1. HTML解析 jsoup的核心功能是对HTML文档进行解析,将其转化为一个可操作的DOM(文档对象模型)。...

    基于统计的网页正文信息抽取

    这是一个Java库,专门用于解析HTML文档,帮助开发者处理和操作HTML元素。通过htmlparser,我们可以方便地遍历HTML文档的DOM树,对每个节点进行分析,找出可能包含正文的元素。 Eclipse作为开发工具,是一个强大的...

    itex插件进行pdf的生成需要的jar

    3. 如果涉及到XML解析或HTML转换为PDF,可能需要`xmlworker-x.x.x.jar`和`htmlparser-x.x.x.jar` 4. 对于更复杂表格的处理,可能需要`itext-xtra-x.x.x.jar` 安装这些JAR文件后,你可以开始使用iText编写代码来创建...

    python实现将html表格转换成CSV文件的方法

    - 在这个例子中,我们使用 `HTMLParser` 类来创建一个自定义的解析器类 `html2csv`,该类能够将 HTML 表格转换为 CSV 数据。 2. **CSV 文件操作** - CSV (Comma-Separated Values) 文件是一种常用的数据存储格式...

Global site tag (gtag.js) - Google Analytics