はじめに
magic-htmlは、HTMLからボディ領域のコンテンツを抽出するプロセスを簡素化するために設計されたPythonライブラリです。複雑なHTML構造を扱う場合でも、単純なウェブページを扱う場合でも、このライブラリはユーザーに便利で効率的なインターフェースを提供することを目指しています。マルチモーダルな抽出、記事、フォーラム、マイクロソフトの記事を含む複数のレイアウト抽出をサポートし、latex式の抽出変換もサポートします。
機能一覧
- HTMLボディ領域のコンテンツを抽出する
- マルチモーダル抽出のサポート
- サポート記事、フォーラム、weiboの投稿レイアウト
- ラテックス配合の抽出と変換をサポート
- プレーンテキストまたはマークダウン形式でカスタマイズされた出力
ヘルプの使用
取り付け
magic-htmlをインストールするには、pipコマンドを使用します:
pip install magic-html
利用する
インストールしたら、以下のコードで使用できる:
from magic_html import GeneralExtractor
# 初始化提取器
extractor = GeneralExtractor()
# 示例HTML内容
html = """
<!doctype html>
<html>
<head>
<title>Example Domain</title>
<meta charset="utf-8" />
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
</head>
<body>
<div>
<h1>Example Domain</h1>
<p>This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.</p>
<p><a href="https://www.iana.org/domains/example">More information...</a></p>
</div>
</body>
</html>
"""
# 提取数据
data = extractor.extract(html)
print(data)
機能 操作の流れ
- 抽出器の初期化: まず、magic-htmlライブラリをインポートし、抽出器を初期化する必要があります。
- HTMLコンテンツの準備: コンテンツを抽出する必要があるHTMLコードを文字列の形で用意する。
- 抽出メソッドの呼び出し使用
extract
メソッドを使用して本文を抽出します。記事、フォーラム、WeChatの投稿など、必要に応じて異なるHTMLタイプを指定できます。 - 出力結果抽出結果は、ユーザーのニーズに応じて、プレーンテキストまたはマークダウン形式にすることができます。
典型例
以下は、単純なHTMLページからボディ・コンテンツを抽出する方法を示す完全な例である:
from magic_html import GeneralExtractor
# 初始化提取器
extractor = GeneralExtractor()
# 示例HTML内容
html = """
<!doctype html>
<html>
<head>
<title>Example Domain</title>
<meta charset="utf-8" />
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
</head>
<body>
<div>
<h1>Example Domain</h1>
<p>This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.</p>
<p><a href="https://www.iana.org/domains/example">More information...</a></p>
</div>
</body>
</html>
"""
# 提取数据
data = extractor.extract(html)
print(data)