java htmlparser 使用教程_如何使用java从HTML文档中提取内容?

在Java编程中,如何使用java从HTML文档中提取内容?

项目的目录结构如下 -

c2e4b5934ae29b42c473917541e27d7e.png

Tika的工具包可从以下网址下载:http://tika.apache.org/download.html ,只下载:tika-app-1.16.jar 和 tika-server-1.16.jar 。

以下是使用java从HTML文档中提取内容的程序 -

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import org.apache.tika.exception.TikaException;

import org.apache.tika.metadata.Metadata;

import org.apache.tika.parser.ParseContext;

import org.apache.tika.parser.html.HtmlParser;

import org.apache.tika.sax.BodyContentHandler;

import org.xml.sax.SAXException;

public class ExtractContentFromHTMLDoc {

public static void main(String[] args) throws IOException, SAXException, TikaException {

// detecting the file type

BodyContentHandler handler = new BodyContentHandler();

Metadata metadata = new Metadata();

FileInputStream inputstream = new FileInputStream(new File("htmlExample.html"));

ParseContext pcontext = new ParseContext();

// Html parser

HtmlParser htmlparser = new HtmlParser();

htmlparser.parse(inputstream, handler, metadata, pcontext);

System.out.println("Contents of the document:" + handler.toString());

System.out.println("Metadata of the document:");

String[] metadataNames = metadata.names();

for (String name : metadataNames) {

System.out.println(name + ": " + metadata.get(name));

}

}

}

原文件:htmlExample.html 的内容如下 -

9d9bc3aa994941dbe02cea542bec4e17.png

执行上面示例代码,得到以下结果 -

SLF4J: Class path contains multiple SLF4J bindings.

SLF4J: Found binding in [jar:file:/F:/worksp/javaexamples/libs/tika_libs/tika-app-1.16.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: Found binding in [jar:file:/F:/worksp/javaexamples/libs/tika_libs/tika-server-1.16.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.

SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]

Contents of the document: 编号 姓名 薪水 职位

1000 李小双 9800 移动开发工程师

1001 苏小牛 9200 自由职业

1002 王中达 14800 技术经理

Metadata of the document:

Content-Encoding: UTF-8

Content-Type: text/html; charset=UTF-8

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值