package com.web.test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import org.htmlparser.NodeFilter;
import org.htmlparser.Parser;
import org.htmlparser.filters.NodeClassFilter;
import org.htmlparser.filters.OrFilter;
import org.htmlparser.tags.TableColumn;
import org.htmlparser.tags.TableRow;
import org.htmlparser.tags.TableTag;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
/**
* 解析HTML
* @author chenxiaobing
*
*/
public class ReadHtml {
public static void main(String[] args) throws IOException {
//1.网页HTML
String strUrl="http://www.usd-cny.com/";
URL url=new URL(strUrl);
InputStreamReader isr=new InputStreamReader(url.openStream());
BufferedReader br=new BufferedReader(isr);
//2.本地HTML
// File f=new File("fortest.htm");
//输入流
// InputStreamReader isr1=new InputStreamReader(new FileInputStream(f));
// BufferedReader br=new BufferedReader(isr1);
//获取html转换成String
String s;
String AllContent="";
while((s=br.readLine())!=null)
{
AllContent=AllContent+s;
}
//使用后HTML Parser 控件
Parser myParser;
NodeList nodeList = null;
myParser =Parser.createParser(AllContent, "utf-8");
NodeFilter tableFilter = new NodeClassFilter(TableTag.class);
OrFilter lastFilter = new OrFilter();
lastFilter.setPredicates(new NodeFilter[] { tableFilter });
try {
//获取标签为table的节点列表
nodeList =myParser.parse(lastFilter);
//循环读取每个table
for (int i = 0; i <=nodeList.size(); i++) {
if (nodeList.elementAt(i)instanceof TableTag) {
TableTag tag = (TableTag)nodeList.elementAt(i);
System.out.println(tag.getChildrenHTML());
System.out.println("-----------------------------------------------------");
/* TableRow[] rows =tag.getRows();
System.out.println("----------------------table "+i+"--------------------------------");
//循环读取每一行
for (int j = 0; j <rows.length; j++) {
TableRow tr =(TableRow) rows[j];
TableColumn[] td =tr.getColumns();
//读取每行的单元格内容
for (int k = 0; k< td.length; k++) {
System.out.println(td[k].getStringText());//(按照自己需要的格式输出)
}
}*/
}
}
} catch (ParserException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
主要介绍了Python实现简单HTML表格解析的方法,涉及Python基于libxml2dom模块操作html页面元素的技巧,需要的朋友可以参考下
今天小编就为大家分享一篇使用jsoup解析html的table中的文本信息实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
工具类中有两个方法,一个是根据前台传入的table的html代码进行导出excel(可以只自定义表格名称/sheet页名称)。还一种是根据html文件,代码自动解析出table然后进行excel导出
编辑器里表格数据,用js解析为所需json格式,便于后台存储
解析 mysql create table 语句,用于通过建表语句生成 model 代码文件。 yarn install yarn dev 或 npm i npm run dev // 构建支持浏览器环境的代码文件,浏览器端直接引用构建出来的 browser/sql-parser.min.js ...
何为table:table者Html表格也,数据之载体。下面是一个比较标准的table代码写法: XML/HTML Code复制内容到剪贴板 <table u00a0border=0 cellspacing u00a0cellpadding=0 width> <th>Month <th>Date ...
解析html里表格示例 基于Java 需要在java环境下运行
赠送jar包:flink-table-planner-blink_2.11-1.13.2.jar; 赠送原API文档:flink-table-planner-blink_2.11-1.13.2-javadoc.jar; 赠送源代码:flink-table-...人性化翻译,文档中的代码和结构保持不变,注释和说明精准
最终效果图: 简单来看一下其中的主要部分: HTML: .td_back_color { background-color: red; ...<table id=tbl_count> <caption>2013春节聚会收支统计 姓名 吃饭 <th>KTV 烧烤</th>
在 Node.js 中读取和写入 HTML 表格作为数据。 使用安装它: npm install html-table-stream 现在您可以解析一些 HTML 表格,例如: var table = require ( 'html-table-stream' ) ; var request = require ( ...
百度小程序富文本解析工具bdParse,改造自wxparse,支持html转换成百度小程序富文本节点。
Excel2table Excel2table是一个库,可以帮助您将Excel文件呈现为HTML表格。 它使用进行Excel解析。如何使用导入库: import "excel2table" ; 调用render函数: excel2table . render ( html_container , data , ...
htmltables htmltables是用于解析html表的简单golang包
本文实例为大家解析了html5 div布局与table布局,供大家参考,具体内容如下 div布局:html+css实现简单布局。 #container中height不能写成百分数,必须为具体高度。 <!DOCTYPE html> <html> <head lang=...
背景图像,是通过Html编码中的背景属性来实现的一种功能。但是,Outlook 2007 中仅在<body>标签内支持Background属性,在<table><tr><td>标签中都不支持此属性。另外,<body>元素虽支持Background属性,...
self.selected = ['html', 'body', 'table', 'head', 'meta', 'style', 'tr', 'td'] self.reset() self._level_stack = [] self.flag = True global style_list, br_list, tr_list, td_list, td_class_list ...
代码如下:public void ProcessRequest (HttpContext context) { string elxStr = “<table><tbody><tr><td>1</td><td>11</td></tr><tr><td>2</td><td>22</td></tr></tbody></table>”; context.Response.Clear();...
主要介绍了JavaScript实现将xml转换成html table表格的方法,实例分析了javascript操作XML文件与table表格的技巧,非常具有实用价值,需要的朋友可以参考下