0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MarkItDownをコマンドラインで試してみる

Last updated at Posted at 2024-12-23

MarkItDownとは

Microsoft社が提供している、様々なファイル形式をMarkdownファイルに変換するライブラリのこと。対応しているファイル形式は以下の通り。

  • PDF
  • PowerPoint
  • Word
  • Excel
  • Images (EXIF metadata and OCR)
  • Audio (EXIF metadata and speech transcription)
  • HTML
  • Text-based formats (CSV, JSON, XML)
  • ZIP files (iterates over contents)

引用元: Github https://github.com/microsoft/markitdown/tree/main

今回はソースコードをローカル環境にダウンロードし、Docker環境を経由して実際にいくつかのファイルをMarkdown形式に変換することを試してみる。

環境

  • Windows 11

前提

  • Dockerインストール済
  • Gitインストール済
  • Python実行環境インストール済

手順

ソースコードをCloneする

git pull https://github.com/microsoft/markitdown.git

Dockerイメージをビルド

docker build -t markitdown:latest .

実際に色んなファイルをMarkdownに変換してみる

準備ができたので以下のコマンドで色々変換を試してみる。
幸いソースにテスト用ファイルがいくつか格納されているので、それらを使用して実際に変換を試してみる

docker run --rm -i markitdown:latest < 変換対象のファイルパス > 出力先のファイルパス

Wordファイル(.docx) → Markdown(.md)

変換前

1.png

変換後

画面左:出力されたmarkdownファイル原文 画面右:markdownプレビュー

2.png

タイトルの文字の大きさが反映されていないが、本文の構造はしっかりと反映されている。

PowerPointファイル(.pptx) → Markdown(.md)

変換前

スライド 1 スライド 2 スライド 3 スライド 4
3.png 4.png 5.png 6.png

変換後

画面左:出力されたmarkdownファイル原文 画面右:markdownプレビュー

7.png

スライド毎に<!-- Slide number: 1 -->というコメントに区切られて出力され、棒グラフは表に変換される。スライド2に埋め込まれている画像はMarkdownには反映されない。

Excelファイル(.xlsx) → Markdown(.md)

変換前

シート 1 シート 2
8.png 9.png

変換後

画面左:出力されたmarkdownファイル原文 画面右:markdownプレビュー

10.png

シート毎に## シート名というコメントに区切られて出力される。

HTMLファイル(.html) → Markdown(.md)

変換前

11.png

変換後

12.png

まとめ

今回はMicrosoft社が提供するMarkItDownを使用し、Wordファイル・PowerPointファイル・Excelファイル・HTMLファイルをマークダウンファイルに変換した。正直複雑に作りこんだMSオフィスのファイルをマークダウンに変換することはまだまだ難しいと思うが、簡易的なメモ程度ものや、HTMLファイルを変換する際には多少便利になるかと思われる。

関連記事

今回はコマンドライン上でMakeItDownを使用したが、ソースコード上でモジュールとして読み込んで使用する内容の記事がいくつか作成されているので、アプリに組み込みたい等の場合は以下記事を参照することをお薦めする。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?