URLからWebページを取得し、markitdownライブラリを使ってMarkdown形式に変換するシンプルなツール
Project description
LynxKit-Markdown
指定されたURLからWebページのコンテンツを取得し、Markdown形式に変換するシンプルなPythonツールです。
内部で markitdown ライブラリを利用し、一時ファイルを経由してHTMLからMarkdownへの変換を行っています。
概要
このツールは、Webページの内容を素早くMarkdown形式で取得したい場合に役立ちます。主な処理の流れは以下の通りです。
- 指定されたURLにアクセスし、HTMLコンテンツを取得します。
- 取得したHTMLを一時的なファイルに保存します。
markitdownライブラリを使用して、一時ファイルをMarkdown形式に変換します。- 変換されたMarkdown文字列を返します。
- 使用した一時ファイルは自動的に削除されます。
インストール方法
このパッケージはPyPIで公開されており、pipを使って簡単にインストールできます。
pip install lynxkit-markdown
これにより、パッケージ本体と、依存関係にあるライブラリ (requests, markitdown) が自動的にインストールされます。
使い方
Pythonスクリプトから lynxkit_markdown パッケージをインポートし、get_markdown_from_url() 関数を使用します。
import lynxkit_markdown
# Markdownに変換したいURLを指定
target_url = "[http://example.com](http://example.com)" # URLを文字列で指定してください
# 関数を呼び出してMarkdownを取得
markdown_content = lynxkit_markdown.get_markdown_from_url(target_url)
# 結果を確認
if markdown_content:
print("--- Markdown変換結果 ---")
print(markdown_content)
print("-----------------------")
# ファイルに保存する場合 (例)
# try:
# with open("output.md", "w", encoding="utf-8") as f:
# f.write(markdown_content)
# print("\n結果を output.md に保存しました。")
# except IOError as e:
# print(f"\nファイルへの保存中にエラーが発生しました: {e}")
else:
# HTMLの取得や変換に失敗した場合
print(f"URL ({target_url}) からMarkdownへの変換に失敗しました。")
get_markdown_from_url() 関数は、処理が成功した場合は変換されたMarkdown文字列を、何らかの理由で失敗した(URLにアクセスできない、変換に失敗したなど)場合は None を返します。
注意点
- 変換品質: HTMLからMarkdownへの変換品質は、内部で使用している
markitdownライブラリの性能に依存します。特に複雑なHTML構造やJavaScriptで動的に生成されるコンテンツの場合、期待通りに変換されないことがあります。 - 開発ステータス: これは主に個人用に開発されたツールです。基本的な機能は動作しますが、積極的なメンテナンスやサポートは保証されていません。バグや改善点に気づいた場合はIssue等で報告いただけると嬉しいですが、対応は不定期になる可能性があります。(気が向いたら治します!)
依存関係
- Python 3.8 以降 (テスト環境: Python 3.13)
requests: URLからのHTML取得に使用markitdown: HTMLからMarkdownへの変換に使用
これらの依存関係は pip install lynxkit-markdown を実行する際に自動的にインストールされます。(pyproject.toml に基づき解決されます。)
ライセンス
このプロジェクトは MITライセンス の下で公開されています。詳細は LICENSE ファイルをご覧ください。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lynxkit_markdown-0.1.0.tar.gz.
File metadata
- Download URL: lynxkit_markdown-0.1.0.tar.gz
- Upload date:
- Size: 15.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
befd225622e6da4d015454e3db2f0578e9db23be65b68b71a6278257ba70c4a7
|
|
| MD5 |
c4d6347b1c244096f31b633de4897dc3
|
|
| BLAKE2b-256 |
cab9b430e6a6dc7b91c130a48c608194634ae57f96ebae28310b1e8021720b06
|
File details
Details for the file lynxkit_markdown-0.1.0-py3-none-any.whl.
File metadata
- Download URL: lynxkit_markdown-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81a0c8dbf9d34b056b44a0aa2ddbf30e470aa14a38610345903a53adc6d342f2
|
|
| MD5 |
2e4bfbb9c51efdb947c834bb25bc2aa2
|
|
| BLAKE2b-256 |
3eedff785a207c7b5a29be9779b27b518fdbe5bd5c531f2ac40fddca4eea6d73
|