个性化阅读
专注于IT技术分析

Tika HTML文件提取示例

本文概述

为了提取HTML文件的内容, Tika使用了HtmlParser。 HtmlParser是一个类, 用于提取HTML文件的内容和元数据。此类位于org.apache.tika.parser.html包中。它包含下表中列出的构造函数和方法。

正确的HtmlParser构造函数

Constructor Description
公共HtmlParser() 它用于创建类的实例。
公共HtmlParser(EncodingDetector encodingDetector) 它通过获取EncodingDetector类的实例来创建HtmlParser类的实例。

Tika HtmlParser方法

Method Description
公共Set <MediaType> getSupportedTypes(ParseContext上下文) 当与给定的解析上下文一起使用时, 它返回此解析器支持的媒体类型集。
公共无效解析(InputStream流, ContentHandler处理程序, 元数据元数据, ParseContext上下文)引发IOException, SAXException, TikaException 它将文档流解析为一系列XHTML SAX事件。
受保护的字符串mapSafeElement(字符串名称) 它用于将安全HTML元素名称映射到语义XHTML等效项。
受保护的布尔值isDiscardElement(String name) 它检查是否应放弃给定HTML元素内的所有内容, 而不是将其包括在解析输出中。
公共String mapSafeAttribute(String elementName, String attributeName) 它使用HtmlMapper机制来自定义HTML映射。
@Field public void setExtractScripts(boolean extractScripts) 它确定是否提取脚本实体中的内容。
公共布尔getExtractScripts() 它用于获取提取的脚本。

Tika HTML文件提取示例

在此示例中, 我们正在提取HTML文件的内容和元数据。参见示例。

package tikaexample;

import java.io.IOException;
import java.io.InputStream;
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 HtmlParse {
   public static void main(final String[] args) throws IOException, SAXException, TikaException {
	   BodyContentHandler handler = new BodyContentHandler();
	   HtmlParser parser          = new HtmlParser();
	   Metadata metadata          = new Metadata();
	   ParseContext pcontext      = new ParseContext();
	   try (InputStream stream = AutoDetectParseExample.class.getResourceAsStream("index.html")) {
	        parser.parse(stream, handler, metadata, pcontext);
	   }
      System.out.println("Document Content:" + handler.toString());
      System.out.println("Document Metadata:");
      String[] metadatas = metadata.names();
      for(String meta : metadatas) {
         System.out.println(meta + ":   " + metadata.get(meta));  
      }
   }
}

输出

Document Content:
Hello, Welcome to srcmini. 

Document Metadata:
dc:title:   Index Page
Content-Encoding:   ISO-8859-1
title:   Index Page
Content-Type:   text/html; charset=ISO-8859-1
赞(0) 打赏
未经允许不得转载:srcmini » Tika HTML文件提取示例
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏