我目前正在尝试从用户正在上传到我的Django应用程序的媒体存储库的文档中提取图像。目前适合我的代码是:
html = pypandoc.convert(
tmp_loc,
'html5',
extra_args=['--extract-media=']
)
这将图像正确地提取到媒体目录中,如image01.jpg
在HTML中,img src是:
<img src="/media/image01.jpg" />
现在的问题是,当用户上传另一个也有图像的docx时,它会在上传时替换上一张图像,因为它也会以名称image01.jpg保存。
为了解决这个问题,我想我们可以在媒体库中创建一个新文件夹,新文件夹的名称将是doc-name。所以现在代码看起来像这样:
html = pypandoc.convert(
tmp_loc,
'html5',
extra_args=['--extract-media=/media/<some_doc_name>']
)
但是,当我运行此操作时,我收到以下错误:
Pandoc died with exitcode "1" during conversion: b'pandoc: /media/docs: createDirectory: permission denied (Permission denied)\n'
有人可以指导我出了什么问题吗?如何解决这个问题? 任何解决这个问题的替代方法也会受到赞赏!!
我在python中使用Pypandoc模块。
答案 0 :(得分:0)
错误您明确表示您无权在/ media / docs
下创建目录出现这种情况可能有多种原因
最后一件事 - 如果你要上传文件,不要认为它们确实有唯一的名称,使用一些独特的东西(比如创建记录的主键),或者通过验证该目录不存在以及它是否存在来检查唯一性,在最后创建一个带有一些额外数字或随机文本的新文件。