我想在python中读取HTML文件。 Normaly我这样做(并且有效):
import codecs
f = codecs.open("test.html",'r')
print f.read()
问题是我的html文件不是全部在同一个文件夹中,因为有一个生成这个html文件的程序并将它们保存到文件夹里面,我有我的脚本来读取文件。 总结一下,我的脚本在一个文件夹中,在这个文件夹中有更多文件夹,其中生成的html文件是。
有人知道我该怎么办?
答案 0 :(得分:1)
import os
import codecs
for root, dirs, files in os.walk("./"):
for name in files:
abs_path = os.path.normpath(root + '/' + name)
file_name, file_ext = os.path.splitext(abs_path)
if file_ext == '.html':
f = codecs.open(abs_path,'r')
print f.read()
这将遍历<script dir>/
(./
将转换为您的脚本目录)并遍历每个子目录中的所有文件。
它将检查扩展名是否为.html
并对每个.html
文件执行操作。
您可能会定义更多“已接受”的文件结尾(例如.htm
)。
答案 1 :(得分:0)
使用os.walk:
import os,codecs
for root, dirs, files in os.walk("/mydir"):
for file in files:
if file.endswith(".html"):
f = codecs.open(os.path.join(root, file),'r')
print f.read()