怎么将txt文件转化为html格式的文件?--极为丑陋的方式

# -*- coding: utf-8 -*-
#python 27
#xiaodeng
#怎么将txt文件转化为html格式的文件?--极为丑陋的方式



import os


#找出所有的txt格式的文件
def getAllTxtFilename(path):
    '找出所有的txt格式的文件,未对子文件夹进行查找'
    #初始化一个空list
    TxtFileNames=[]
    for dirpath,dirnames,filenames in os.walk(path):
        '''
        #os.walk(path),返回结果为3项:
        #dirpath为文件路径
        #dirnames为一个list,为文件夹下所有子目录文件
        #filenames为文件名
        '''
        for fileName in filenames:
            #print Name
            #extend只接受一个列表做为参数
            #filesName为单个文件而不是一个list结构,所以不能用extend,而需要用append
            if fileName[-3:]=='txt':#查找特定后缀的文件
                TxtFileNames.append(fileName)
    return TxtFileNames



#构造txt转html函数
def txtToHtmlLink(path):
    #调用getAllTxtFilename函数
    filenames=getAllTxtFilename(path)

    
    #将html代码编写好之后全部写入一个list中
    htmlLink=['<html>\n<head>\n']
    for filename in filenames:
        if os.path.isfile(filename):
            'os.path.isfile-->检查filename是不是文件类型'
            
            myfile=open(filename)
            #读取第一行,将其作为html的标题
            firstline=myfile.readline().strip()
            firstline='<title>'+firstline+'</title>\n</head>\n<body>\n'

            #追加写入list中
            htmlLink.append(firstline)

            #第一行已经读取,再次读取时不会重复读取
            lines=myfile.readlines()
                
            for line in lines:
                line=line.strip()
                #写入正文内容
                if 'NO' in line:#寻找文件特征
                    line='<br>'+line+'</br>'
                line='<li>'+line+'</li>'
                htmlLink.append(line)
            
            #结尾
            htmlLink.append('\n</body>\n</html>')
            myfile.close()
    return htmlLink



if __name__=='__main__':
    #path:将此处替换为实际文件夹的路径,注意这里为文件夹路径而不是文件路径,python文件夹
    path=r"C:\python"
    html_links=txtToHtmlLink(path)
    HtmlFile=open('xiaodeng.html','w')
    for line in html_links:
        HtmlFile.write(line) 
    HtmlFile.close()

 

posted @ 2015-10-20 00:38  Xiao|Deng  阅读(1987)  评论(0编辑  收藏  举报