Why not login to Qiita and try out its useful features?

We'll deliver articles that match you.

You can read useful information later.

2
1

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をブラウザで動くようにした話.

Posted at

背景

  • MSがMS Officeの各種ファイルをmarkdownにコンバートできるライブラリを公開した.
  • デフォルトがCLIで環境をいろんなところに作るのが面倒.
  • ブラウザにしたかった.

作ったもの

MarkItDown Web Converter

オフィスドキュメントやPDFなどの各種ファイルをMarkdown形式に変換するWebアプリケーション.Microsoft社のMarkItDownライブラリを利用して,ブラウザ上で簡単にファイル変換が行える.

機能

  • ブラウザからのファイルアップロード
  • 各種ファイル形式からMarkdownへの自動変換
  • 変換したファイルの即時ダウンロード

対応ファイル形式(markitdown準拠)

  • Microsoft Office (.docx, .xlsx, .pptx)
  • PDF (.pdf)
  • 画像ファイル (.jpg, .jpeg, .png)
  • テキストファイル (.txt, .csv, .json, .xml)
  • HTML (.html)

必要要件

  • Docker
  • Docker Compose

インストールと実行方法

  1. リポジトリのクローン:
git clone git@github.com:feles-ao42/markitdown_browser.git
cd markitdown_browser
  1. Dockerコンテナの起動:
docker-compose up --build
  1. ブラウザで以下のURLにアクセス:
http://localhost:5000

使用方法

  1. ブラウザでアプリケーションにアクセス
  2. 「ファイルを選択」ボタンをクリックしてファイルを選択
  3. 「Convert to Markdown」ボタンをクリック
  4. 変換されたMarkdownファイルが自動的にダウンロードされる

プロジェクト構成

markitdown_browser/
├── app.py              # メインアプリケーション
├── templates/          # HTMLテンプレート
│   └── upload.html     # アップロードページ
├── Dockerfile          # Dockerビルド設定
├── docker-compose.yml  # Docker Compose設定
└── requirements.txt    # Pythonパッケージ依存関係

セキュリティ対策

  • ファイルサイズ制限: 16MB
  • 許可された拡張子のみ受付
  • セキュアなファイル名の処理
  • アップロードディレクトリの自動作成

開発環境での実行

Dockerを使用せずにローカルで実行する場合:

  1. Python環境のセットアップ:
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
  1. アプリケーションの起動:
python app.py

制限事項

  • アップロードファイルサイズは16MBまで
  • 一度に処理できるファイルは1つまで
  • 変換結果は一時的にサーバーに保存され、ダウンロード後に削除されます

ライセンス

このプロジェクトはMITライセンスの下で公開されています。

謝辞

このプロジェクトはMicrosoft社のMarkItDownライブラリを使用しています。

2
1
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
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?