另一个相关问题:如何从 python 脚本内部通过网络访问文件;网络是 samba 共享。
我尝试了不同的方法,但还是没能解决。我一直收到:没有这样的文件或目录
我正在像这样运行脚本:
$ /usr/bin/python3 "/home/nathaniel/Documents/my first python script.py"
这是我的坐骑:
/media/nathaniel/ssd/
这是我的文件:
/media/nathaniel/ssd/test/SD/1.avi
我尝试过不同的方法,但没有任何效果。
这是我的脚本的简化版本:
#!/usr/bin/env python
import subprocess
import tempfile
sourcedir = "/media/nathaniel/ssd/test/SD"
diroutput = "/media/nathaniel/ssd/test/HD"
sourceExt = "avi"
def getFileNames():
global filenamefirst
filenamefirst = int(input("enter file name NUMBER to start with: "))
global filenamelast
filenamelast = int(input("enter NUMBER of last file to process: "))
def main():
import os
import os.path
getFileNames()
for x in range(filenamefirst, filenamelast+1):
if os.path.exists(diroutput + "/" + str(x) + ".mp4"):
os.remove(diroutput + "/" + str(x) + ".mp4")
from subprocess import check_output
check_output("ffmpeg -i \"" + sourcedir + "/" + str(x) + "." + sourceExt + "\" -c:v libx264 -b:v 18M -c:a aac \"" + diroutput + "/" + str(x) + ".mp4\"")
print("^======= finished file " + str(x) + "." + sourceExt)
print("end")
main()
错误:
FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg -i "/media/nathaniel/ssd/test/SD/1.avi" -c:v libx264 -b:v 50M -c:a aac "/media/nathaniel/ssd/test/HD/1.mp4"': 'ffmpeg -i "/media/nathaniel/ssd/test/SD/1.avi" -c:v libx264 -b:v 50M -c:a aac "/media/nathaniel/ssd/test/HD/1.mp4"'
答案1
我发现其中任何一个都可以通过网络工作:
"\\\\192.168.1.1\\c\\my.file"
"\\\\computername\\c\\my.file"
或者本地:
"d:\\foldername\\my.file"`
或者:
r"d:\foldername\my.file"