python 将html文件转化为txt文件

①需求:一千多篇乌云知识库的文章,收集下来后是html文件,需要将它们都转化为txt文件。由于本人又菜又懒,找了很久代码想要ctrl+c和ctrl+v大佬的,然后收工,然而没有找到好使的代码。下了一个转化工具,但是转化效果不太好,只好苦逼的研究一下代码了(害无非就是循环读取html文件,再进行编码转化,再保存到txt文件罢了),文件的编码格式真是博大精深,菜鸡不想深入苦海,以下的代码仅供参考哦~欢迎大佬指点。

②目的:将一个文件夹下的所有html文件转化为txt文件,并放入另外一个文件夹下(也就是一个漏漏的文件转化器),在可爱的jupyter上运行。

(1)开始转化

# -*- coding:utf-8 -*-
import os
import nltk
from bs4 import BeautifulSoup
# root_dir为要读取文件的根目录
root_dir = r"C:\\Users\\z\\Desktop\\drops_html版"
# 依次读取根目录下的每一个文件
for file in os.listdir(root_dir):
    file_name = root_dir + "\\" + file
    filein = open(file_name, "rb")
    #将html转化为txt,用变量bb来暂时保存转化后的txt文本
    bb = BeautifulSoup(filein).get_text()
    with open("C:\\Users\\z\\Desktop\\temp\\{0}.txt".format(file),"a",encoding="gb18030") as file_handle:   # .txt可以不自己新建,代码会自动新建
        file_handle.write(bb)     #将txt文本依次写入文件夹中
        file_handle.write('\n')    

(2)删除txt文本的空行

转化后的txt文件太太太多空行了,将其删除

import sys
import os
# root_dir为要读取文件的根目录
root_dir = r"C:\\Users\\z\\Desktop\\temp"
# 依次读取根目录下的每一个文件
for file in os.listdir(root_dir):
    file_name = root_dir + "\\" + file
    filein = open(file_name, "r",encoding="gb18030")
    # txt可以不自己新建,代码会自动新建
    with open("C:\\Users\\z\\Desktop\\txt\\{0}".format(file),"a",encoding="gb18030") as fnew: 
        #对每一行先删除空格,\n等无用的字符,再检查此行是否长度为0
        for line in filein.readlines():                                  
            data=line.strip()
            if len(data)!=0:
                fnew.write(data)
                fnew.write('\n')
                                    本文实例讲述了Python转换HTML到Text纯文本的方法。分享给大家供大家参考。具体分析如下:
今天项目需要将HTML转换为纯文本,去网上搜了一下,发现Python果然是神通广大,无所不能,方法是五花八门。
拿今天亲自试的两个方法举例,以方便后人:
1. 安装nltk,可以去pipy装
(注:需要依赖以下包:numpy, PyYAML)
2.测试代码:
复制代码 代码如下:>>> import nltk  
>>> aa = r””’ 
 <b>Project:</b> DeHTML<br> 
 <b>Description</b>:<br
                                    1 from formatter import AbstractFormatter, NullWriter2 from htmllib import HTMLParser34 def _(str, in_encoder="gbk", out_encoder="utf8"): 5 return unicode(str, in_encoder).encode(ou...
                                    夹以及子目录、子目录里面的 ,获取到该目录下所有的【.html文件后,返回一个list对象
2、遍历完成后得到一个html文件列表对象,将该列表交给html_to_txt方法,html_to_txt方法
里面循环逐个读取html文件中指定标签中标签中标签中的文字,和中指定标签
里面标签的文字提取出来
3、读取到的文本内容输出到txt文件中,这里可以加上一个替换replac
                                    CODE:#!/usr/bin/python# -*- coding: utf-8 -*-'''Created on 2014-9-5@author: guaguastd@name: html_to_text.py'''from login import google_api_requestfrom html import cleanHtmlwhile True:query = raw_input...
                                    这篇文章主要介绍了Python转换HTML到Text纯文本的方法,分析了常用的两种方法,非常具有实用价值,需要的朋友可以参考下本文实例讲述了Python转换HTML到Text纯文本的方法。分享给大家供大家参考。具体分析如下:今天项目需要将HTML转换为纯文本,去网上搜了一下,发现Python果然是神通广大,无所不能,方法是五花八门。拿今天亲自试的两个方法举例,以方便后人:方法一:1. 安装nltk...
                                    假设我们需要从各种网页中提取全文,并且要剥离所有HTML标记。通常,默认解决方案是使用BeautifulSoup软件包中的get_text方法,该方法内部使用lxml。这是一个经过充分测试的解决方案,但是在处理成千上万个HTML文档时可能会非常慢。通过用selectolax替换BeautifulSoup,您几乎可以免费获得5-30倍的加速!这是一个简单的基准测试,可分析commoncrawl(`处...
                                    我试图从X个HTML文件解析特定内容到单个TXT文件Python - 将多个HTML页解析为单个TXT文件我已经dirtily编码如下:#!/usr/bin/pythonimport sys, mechanize, BeautifulSoupdef parsedata():##do stuffprvitekst = soup.find(text='Random Number')prvikesh ...
                                    我正在尝试使用Pythonhtml块转换为文本。输入:Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massaConsectetuer adipiscing elit. Some Link Aenean commodo ligula eget d...
                                    我有很多html文件是这样的:Summary:According to the complaint filed January 04, 2011, over a six-week period in December 2007 and January 2008, six healthcare related hedge funds managed by Defendant FrontPoint ...
                                    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答。把html改为txt格式的方法是将html的扩展名修改为TEXT扩展名即可。超文本标记语言或超文本链接标示语言(标准通用标记语言下的一个应用)HTML(HyperText Mark-up Language)是一种制作万维网页面的标准语言,是万维网浏览器使用的一种语言,它消除了不同计算机之间信息交流的障碍。它是目前网络上应用最为广泛...
                                    # @UpdateTime : 2020-12-08 16:53# @Author : wz# @File : Get_WebDetails# @Software: PyCharm# @used: 爬取任意页面中任意数据import reimport urllib.requestfrom Utils.Log import LoggerLogger_message = Logger()# 爬取gbk...