通常在使用爬虫时,爬取到网上的文章都是各式各样的格式处理起来比较麻烦,这里我们使用Apache-Tika来处理HTML格式的文章,如下:

package com.mengyao.tika.app;

import java.io.File;
import java.io.FileInputStream; 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; public class HtmlApp { public static void main(final String[] args) throws Exception {
// Tika默认是10*1024*1024,这里防止文件过大导致Tika报错
BodyContentHandler handler = new BodyContentHandler(1024 * 1024 * 10);
Metadata metadata = new Metadata();
FileInputStream inputstream = new FileInputStream(new File("D:/product.html"));
ParseContext pcontext = new ParseContext(); // 解析HTML文档时应由超类AbstractParser的派生类HtmlParser实现
HtmlParser msofficeparser = new HtmlParser();
msofficeparser.parse(inputstream, handler, metadata, pcontext);
// 获取HTML文档的内容
System.out.println("HTML文档内容:" + handler.toString()); // 获取HTML文档的元数据
System.out.println("HTML文档元数据:");
String[] metadataNames = metadata.names(); for (String name : metadataNames) {
System.out.println(name + " : " + metadata.get(name));
}
} }

最新文章

  1. xpth 字符串截取
  2. Sublime编辑器安装使用
  3. 高性能Cordova App开发学习笔记
  4. Jump Game 的三种思路 - leetcode 55. Jump Game
  5. [USACO精选] 第二章 动态规划(一)
  6. cisco路由器配置教程
  7. github快速入门(一)
  8. Android项目开发全程(一)--创建工程
  9. 微信开放平台获取component_verify_ticket
  10. ActivityLifeCycle官方demo分解
  11. 【原创】1、简单理解微信小程序
  12. RHM-M10汽车吊力矩限制器/载荷指示器
  13. 利用回调实现Java的异步调用
  14. 从零开始学习微信小程序
  15. 杨辉三角(用for循环)
  16. semantic-ui 输入框
  17. eclipse将javaSE项目导出成可执行jar包
  18. 解决Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) ";
  19. ping -c 3 localhost
  20. java 重载 : 1.参数个数不同,2.参数类型不同

热门文章

  1. 1 加到 100 的 时间复杂度 C#.
  2. ASP生成新会员编号
  3. 不学就吃亏的underscorejs类库学习示例 ——(集合篇)
  4. underscorejs-countBy学习
  5. 20款jquery下拉导航菜单特效代码分享
  6. ubuntu 实现界面切换
  7. Day12(补充) Python操作MySQL
  8. android 学习第一步
  9. objective-c(初始化)
  10. 转:使用Mongo Connector和Elasticsearch实现模糊匹配