首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将HTML转换为可读文本- Python

如何将HTML转换为可读文本- Python
EN

Stack Overflow用户
提问于 2020-08-30 02:17:16
回答 2查看 66关注 0票数 0

如何将此文本转换为可读的(删除所有的,即我已经尝试使用html2text,但它只删除了

,我需要删除所有内容。)

我希望它像在https://templates.mailchimp.com/resources/html-to-text/上,而不像在https://www.textfixer.com/html/html-to-text.php <p>Du kan g\u00f8re det s\u00e5dan her:<\/p><p><math><mrow><munder><mrow><munder><mrow><mtable><mtr><mtd><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mover><mrow><mtext> <\/mtext><mn>4297<\/mn><\/mrow><mrow><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1<\/mn><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1<\/mn><mo>\u2062<\/mo><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><\/mrow><\/mover><\/mtd><\/mtr><mtr><mtd><munder><mrow><mtable><mtr><mtd><mo>+<\/mo><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1425<\/mn><\/mtd><\/mtr><\/mtable><\/mrow><mo>\u0332<\/mo><\/munder><\/mtd><\/mtr><mtr><mtd><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>5722<\/mn><\/mtd><\/mtr><\/mtable><\/mrow><mo>\u0332<\/mo><\/munder><\/mrow><mo>\u0332<\/mo><\/munder><\/mrow><\/math><\/p>

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-30 14:01:35

我不知道这里有没有你想要的。

代码语言:javascript
复制
from simplified_scrapy import SimplifiedDoc,utils
html = '''
<p>Du kan g\u00f8re det s\u00e5dan her:<\/p><p><math><mrow><munder><mrow><munder><mrow><mtable><mtr><mtd><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mover><mrow><mtext> <\/mtext><mn>4297<\/mn><\/mrow><mrow><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1<\/mn><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1<\/mn><mo>\u2062<\/mo><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><\/mrow><\/mover><\/mtd><\/mtr><mtr><mtd><munder><mrow><mtable><mtr><mtd><mo>+<\/mo><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1425<\/mn><\/mtd><\/mtr><\/mtable><\/mrow><mo>\u0332<\/mo><\/munder><\/mtd><\/mtr><mtr><mtd><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>5722<\/mn><\/mtd><\/mtr><\/mtable><\/mrow><mo>\u0332<\/mo><\/munder><\/mrow><mo>\u0332<\/mo><\/munder><\/mrow><\/math><\/p>
'''
doc = SimplifiedDoc(html)
print (doc.text)
print (doc.removeHtml(html))
print (doc.replaceReg(html,'<[^>]*>','').strip())
print (doc.replaceReg(doc.replaceReg(html,'<[^>]*>',''),'[ ]+',' ').strip()
票数 0
EN

Stack Overflow用户

发布于 2020-08-30 02:28:21

您可以使用BeautifulSoup来完成此操作。

代码语言:javascript
复制
from bs4 import BeautifulSoup

html = "<p>Du kan g\u00f8re det s\u00e5dan her:<\/p><p><math><mrow><munder><mrow><munder><mrow><mtable><mtr><mtd><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mover><mrow><mtext> <\/mtext><mn>4297<\/mn><\/mrow><mrow><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1<\/mn><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1<\/mn><mo>\u2062<\/mo><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><\/mrow><\/mover><\/mtd><\/mtr><mtr><mtd><munder><mrow><mtable><mtr><mtd><mo>+<\/mo><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>1425<\/mn><\/mtd><\/mtr><\/mtable><\/mrow><mo>\u0332<\/mo><\/munder><\/mtd><\/mtr><mtr><mtd><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mtext> <\/mtext><mn>5722<\/mn><\/mtd><\/mtr><\/mtable><\/mrow><mo>\u0332<\/mo><\/munder><\/mrow><mo>\u0332<\/mo><\/munder><\/mrow><\/math><\/p>"
soup = BeautifulSoup(html)

# remove the script and style elements
for script in soup(["script", "style"]):
    script.extract()
    
# extract the text
text = soup.get_text()

print(text)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63650338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档