从HTML文件获取纯文本
通过BeautifulSoup获取纯文本
之前是通过BeautifulSoup (bs4)获取纯文本的,简单演示如下:
from bs4 import BeautifulSoup
htmfile = 'myweb.htm'
html = open(htmfile, 'r', encoding='utf-8')
htmlpage = html.read()
soup = BeautifulSoup(htmlpage.strip(), 'html.parser')
print(soup.text)
但是这样做的问题在于,其控制文本的格式或许与浏览器端显示的不一样
浏览器端显示的格式:

2018-06-01 14_36_17-Document.png
bs4抓取的文本格式如下:

2018-06-01 15_06_04-.png
为什么会这样呢?
因为在html源码中,存在这样的换行:

2018-06-01 15_09_30-Document.png
可以理解为bs4仅仅将html中的tag什么的去除了,但是并没有考虑格式与浏览器显示一致。
经过一番搜索,终于找到相应的方

本文介绍了如何使用Python的BeautifulSoup和HTMLParser库从HTML文件中获取纯文本,并保持与浏览器显示的格式一致。通过自定义的HTML解析器,实现了去除标签但保留正确格式的功能,最后展示了主程序代码,包括解压HTML文件、提取纯文本和拆分文本文件。
最低0.47元/天 解锁文章
1560

被折叠的 条评论
为什么被折叠?



