【Java】Html转Markdown格式 - 简书

背景

最近在做爬虫项目,其中一个需求是将网页上的帮助文档,下载至本地并形成Markdown文档,方便离线查阅。

探索及解决

找到两个具有该功能的Java类库,如下

<dependency>
    <groupId>com.kotcrab.remark</groupId>
    <artifactId>remark</artifactId>
    <version>1.0.0</version>
</dependency>
<dependency>
    <groupId>com.github.houbb</groupId>
    <artifactId>html2md</artifactId>
    <version>0.0.1</version>
</dependency>

相比较之下,我选择了remark。
使用html2md进行格式转换之后,最终文档与预期的格式差异较大。
而remark转换后则较为中规中矩,比较符合实际使用中的Markdown语法。

// 将获取到的内容从HTML格式转换为Markdown格式
Remark remark = new Remark();
content = remark.convert(content);

转换前的Html

<h3 id="12-总体架构">1.2 总体架构</h3> 
<p>WebMagic的结构分为<code>Downloader</code>、<code>PageProcessor</code>、<code>Scheduler</code>、<code>Pipeline</code>四大组件,并由Spider将它们彼此组织起来。这四大组件对应爬虫生命周期中的下载、处理、管理和持久化等功能。WebMagic的设计参考了Scapy,但是实现方式更Java化一些。</p> 
<p>而Spider则将这几个组件组织起来,让它们可以互相交互,流程化的执行,可以认为Spider是一个大的容器,它也是WebMagic逻辑的核心。</p> 

转换后的Markdown

### 1.2 总体架构 ###

WebMagic的结构分为`Downloader`、`PageProcessor`、`Scheduler`、`Pipeline`四大组件,并由Spider将它们彼此组织起来。这四大组件对应爬虫生命周期中的下载、处理、管理和持久化等功能。WebMagic的设计参考了Scapy,但是实现方式更Java化一些。

而Spider则将这几个组件组织起来,让它们可以互相交互,流程化的执行,可以认为Spider是一个大的容器,它也是WebMagic逻辑的核心。

原网址: 访问
创建于: 2024-04-10 10:13:38
目录: default
标签: 无

请先后发表评论
  • 最新评论
  • 总共0条评论