一条Python和一个新手。我尝试使用以下代码上载文件:
@cherrypy.tools.noBodyProcess()
def POST(self,theFile=None):
lcHDRS = {}
for key, val in cherrypy.request.headers.iteritems():
lcHDRS[key.lower()] = val
formFields = myFieldStorage(fp=cherrypy.request.rfile,
headers=lcHDRS,
environ={'REQUEST_METHOD':'POST'},
keep_blank_values=True)
dt = datetime.now()
date = dt.strftime('%Y-%m-%d')
dt = dt.strftime('%Y%m%d%H%M%S')
theFile = formFields['theFile']
theFile.filename = str(dt) + "file"
shutil.copy2(theFile.file.name,os.path.join(absolutePath , theFile.filename))
...
...
我检查了路径os.path.join操作系统(绝对路径,文件名)一切都很顺利。 问题是这些代码在Linux ubuntu上运行得很好,但在windows上却不行。 调用的错误是:已编辑
^{pr2}$我哪里出错了? 如果你需要其他信息,请告诉我。在
我猜windows对启动程序有UAC限制,你有没有试过在管理员权限下运行脚本?在
该问题可能与某些临时文件安全性有关,该安全性禁止通过文件名重新打开。尝试将
shutil.copy2
调用替换为:相关问题 更多 >
编程相关推荐