所以这是我的第一次python体验。我有一个文件夹列表,我正在尝试转换为HTML页面。为此,我有以下代码:
import inspect, os, errno, markup
path = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))+'/www/img/'
print path
for f in os.listdir(path):
counter = 1
page = markup.page()
page.init(charset="UTF-8")
from markup import oneliner as e
page.a(e.img(src='img/'+f, width=1024, height=768), href='')
final = open('/index'+str(counter)+'.html','w')
final.write(page)
我收到IOError: [Errno 13] Permission denied: '/index1.html'
消息....
任何线索或想法都非常感激。谢谢!
答案 0 :(得分:2)
我认为主要问题与根文件夹(/
)的文件权限有关。尝试以root身份运行脚本或选择一些您确定具有写入权限的目录。
答案 1 :(得分:1)
您的问题出在此处:open('/index'+str(counter)+'.html','w')
以'/'开头的路径是绝对路径,无论您当前的目录是什么。 而且它不是特定的python。
答案 2 :(得分:0)
假设你正在使用Unix / Linux(通过正斜杠),任何以/
开头的路径都是绝对的。因此,您尝试将名为index.html
的文件写入文件系统的根目录。只有root才能做到这一点。
如果您希望路径是相对的,请更改:
final = open('/index'+str(counter)+'.html','w')
为:
final = open('index'+str(counter)+'.html','w')
请注意/
index