python如何创建新文件_python – 从上传创建新文件

我遇到了一个小问题:

我有一个网站来管理不同用户的视频文件.每个用户都可以将视频上传到我不想更改的个人文件夹,因为我不想混淆不同用户的文件.上传视频文件后,我调用一个子进程,它应该创建一个缩略图.由于ffmpeg中的错误,子进程失败,似乎与缺少写入权限有关.上传的文件和包含的文件夹属于www-data.

代码:

command = ("ffmpeg -ss 00:00:10 -i %s -dframes 1 %s -y" % (video_path, image_path)).split()

subprocess.call(command)

FFMPEG似乎作为不同的用户运行,因为它仅在目标文件夹具有777权限时才有效.否则它会失败并显示以下消息:

av_interleaved_write_frame(): I/O error occurred

Usually that means that input file is truncated and/or corrupted.

如果我触摸图像文件而不是通过ffmpeg创建它,那么文件夹是否有775或777并不重要.结果文件也属于www-data,这意味着子进程本身作为www-data运行,不是吗?

我想创建一个具有777权限的子文件夹,但我不喜欢它有两个原因:这个文件夹必须动态创建,因为我希望能够创建新用户(并在我的uploads文件夹中生成新的子文件夹) .无论如何,777权限都不是很好的解决方案.

你有什么建议我有什么改变,所以ffmpeg可以写入文件夹而不会打开安全漏洞而不必在创建新用户/文件夹时触摸任何东西?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值