专栏名称: GitHubStore
分享有意思的开源项目
目录
相关文章推荐
幸福东台  ·  查!分!啦! ·  昨天  
幸福东台  ·  查!分!啦! ·  昨天  
掌上南通  ·  明起,出分! ·  昨天  
掌上南通  ·  明起,出分! ·  昨天  
吉安发布  ·  明天出分!复试攻略都在这儿了→ ·  昨天  
吉安发布  ·  明天出分!复试攻略都在这儿了→ ·  昨天  
MBAEMBA  ·  饿了么“老二”难当 ·  2 天前  
MBAEMBA  ·  饿了么“老二”难当 ·  2 天前  
现代快报  ·  黄仁勋首度回应DeepSeek冲击 ·  2 天前  
现代快报  ·  黄仁勋首度回应DeepSeek冲击 ·  2 天前  
51好读  ›  专栏  ›  GitHubStore

magic-html : 通用HTML数据提取器

GitHubStore  · 公众号  ·  · 2024-09-14 17:45

正文

项目简介

magic-html提供了一套工具,能够轻松地从HTML中提取主体区域内容。无论您处理的是复杂的HTML结构还是简单的网页,这个库都旨在为您的HTML抽取需求提供一个便捷高效的接口。


特点

  • 返回主体区域html结构,可自定义输出纯文本/markdown

  • 支持多模态抽取

  • 支持多种版面extractor,文章/论坛

  • 支持latex公式提取转换


安装

pip install https://github.com/opendatalab/magic-html/releases/download/magic_html-0.1.2-released/magic_html-0.1.2-py3-none-any.whl

使用

from magic_html import GeneralExtractor
# 初始化提取器extractor = GeneralExtractor()
url = "http://example.com/"html = """
<html><head> <title>Example Domaintitle>
<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 Domainh1> <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>"""
# 文章类型HTML提取数据data = extractor.extract(html, base_url=url)
# 论坛类型HTML提取数据# data = extractor.extract(html, base_url=url, html_type="forum")
# 微信文章HTML提取数据# data = extractor.extract(html, base_url=url, html_type="weixin")
print(data)

benchmark report

根据html页面类型,文章/论坛,对比不同开源通用抽取框架抽取准确性

文章类型:选取头部新闻、博客站点共标注158个html页面

╒══════════════════════╤═════════════╤════════════╤═══════════╕funcprec_meanrec_meanf1_mean╞══════════════════════╪═════════════╪════════════╪═══════════╡magic_html           │    0.908865 │   0.95032  │  0.92913├──────────────────────┼─────────────┼────────────┼───────────┤trafilatura          │    0.833434 │   0.912384 │  0.871124├──────────────────────┼─────────────┼────────────┼───────────┤trafilatura_fallback │    0.831229 │   0.933713 │  0.879496├──────────────────────┼─────────────┼────────────┼───────────┤readability-lxml     │    0.86587  │   0.861391 │  0.863625├──────────────────────┼─────────────┼────────────┼───────────┤newspaper3k          │    0.409585 │   0.372083 │  0.389935├──────────────────────┼─────────────┼────────────┼───────────┤goose3               │    0.525717 │   0.457669 │  0.489339├──────────────────────┼─────────────┼────────────┼───────────┤justext              │    0.224945 │   0.117092 │  0.154014├──────────────────────┼─────────────┼────────────┼───────────┤gne                  │    0.828849 │   0.629112 │  0.715299╘══════════════════════╧═════════════╧════════════╧═══════════╛

论坛类型:选取头部论坛、问答站点与开源建站框架搭建站点共103个html页面

╒══════════════════════╤═════════════╤════════════╤═══════════╕funcprec_meanrec_meanf1_mean╞══════════════════════╪═════════════╪════════════╪═══════════╡magic_html           │    0.796252 │  0.826819  │ 0.811248├──────────────────────┼─────────────┼────────────┼───────────┤trafilatura          │    0.716009 │  0.695947  │ 0.705835├──────────────────────┼─────────────┼────────────┼───────────┤trafilatura_fallback │    0.730304 │  0.691328  │ 0.710282├──────────────────────┼─────────────┼────────────┼───────────┤readability-lxml     │    0.788018 │  0.445087  │ 0.568867├──────────────────────┼─────────────┼────────────┼───────────┤






请到「今天看啥」查看全文


推荐文章
幸福东台  ·  查!分!啦!
昨天
幸福东台  ·  查!分!啦!
昨天
掌上南通  ·  明起,出分!
昨天
掌上南通  ·  明起,出分!
昨天
MBAEMBA  ·  饿了么“老二”难当
2 天前
MBAEMBA  ·  饿了么“老二”难当
2 天前
现代快报  ·  黄仁勋首度回应DeepSeek冲击
2 天前
现代快报  ·  黄仁勋首度回应DeepSeek冲击
2 天前
LinkedIn校园  ·  二十岁的金钱观,可能决定你的人生
8 年前
公路商店  ·  根除二郎腿的办法只有一个
8 年前