- html2text 是一个 Python 脚本库,可将 HTML 页面转换为干净、易于阅读的纯 ASCII 文本。 更好的是,该 ASCII 也恰好是有效的 Markdown(一种文本到 HTML 的格式)。
安装 html2text库
pip3 install html2text
你可以在 Python 中使用它:
import html2text
print (html2text.html2text("<p>Hello, world.</p>"))
或者使用一些配置选项:
import html2text
h = html2text.HTML2Text()
h.ignore_links = True
print (h.handle("<p>Hello, <a href='http://earth.google.com/'>world</a>!"))
自己写的脚本 html2md.py 用来把提取指定网址的 Markdown 文本
- 使用: python3 html2md.py [url] [text]
#!/usr/bin/python3
import requests
import html2text
from sys import argv
# 拼接请求地址
url = 'https://www.262235.xyz/index.php/category/learn/'
if (len(argv) > 1) :
url = argv[1]
# 请求头,模拟浏览器UA
headers = {
'User-Agent': ' '.join(['Mozilla/5.0 (Windows NT 10.0; Win64; x64; ServiceUI 14)',
'AppleWebKit/537.36 (KHTML, like Gecko)', 'Chrome/70.0.3538.102', 'Safari/537.36',
'Edge/18.18363'])
}
# 发送请求
r = requests.get(url=url, headers=headers)
# html 转换 markdown
html = r.text
text = html2text.html2text(html)
# 转换时忽略链接
if (len(argv) > 2) :
url = argv[1]
h = html2text.HTML2Text()
# Ignore converting links from HTML
h.ignore_links = True
text = h.handle(html)
print(text)