这是我第三天使用Python,我相信某些简单的东西被忽略了。变量文件名不被视为文件,无法打开
我想索引到html文件名列表中,将索引的html文件名设置为var,然后尝试打开该文件。计划是循环遍历文件名列表。
不幸的是,这个var不是作为一个文件读取的,而是作为一个名字被读取的。
我认为这将是一个简单的问题来回答,但我只是没有找到它。
那么,我做错了什么?任何帮助将不胜感激。
这里是我的代码:
file_list = []
for root, dirs, files in os.walk(r'C:\Aptana\Beautiful'):
for file in files:
if file.endswith('.html'):
file_list.append(file)
input_file = file_list[0]
orig_file = open(input_file, 'w')
我知道我失去了一些东西简单,但我把它的驾驶我疯了!
更新:
file_list = []
for root, dirs, files in os.walk(r'C:\Aptana\Beautiful'):
for file in files:
if file.endswith('.html'):
file_list.append(os.path.join(root,file))
input_file = file_list[0]
orig_file = open(input_file, 'w')
soup = BeautifulSoup(orig_file)
title = soup.find('title')
main_txt = soup.findAll(id='main')[0]
toc_txt = soup.findAll(class_ ='toc-indentation')[0]
然后崩溃:
Traceback (most recent call last):
File "C:\Aptana\beautiful\B-1.py", line 47, in <module>
soup = BeautifulSoup(orig_file)
File "C:\Python33\lib\site-packages\bs4\__init__.py", line 161, in __init__
markup = markup.read()
io.UnsupportedOperation: not readable
感谢adsmith!如果您有任何其他问题,请告诉我。
orig_file被打印为: < _io.TextIOWrapper名= 'C:\集锦\美丽模式=' R '\管理+ Guide.html' 编码= 'CP1252'>
该代码看起来是正确的,一目了然。 “不作为文件读取,而是作为名称阅读”是什么意思?程序的行为是什么,你期望它做什么? –