Triton Posted June 20, 2006 at 04:29 PM Report #33939 Posted June 20, 2006 at 04:29 PM import os from path import path pathsw = 'E:\\MKVtoolnix\\mkvmerge.exe' dir = 'E:\\Downloads\\Anime\\Inuyasha\\' d = path(dir) for f in d.files('*.ogm'): for f2 in d.files('*.ssa'): if f[:-4] == f2[:-4]: temp = f[:-4] pm = ' -o "%s.mkv" -a 1,2 -d 0 -S "%s.ogm" --language 0:eng -s 0 -D -A "%s.ssa" --track-order 0:0,0:1,0:2,1:0' % (temp, temp, temp) os.system(pathsw + pm) print 'File sucessfully created!' Ontem tinha 60 episódios de Inuyasha com legendas separadas do vídeo e não me apetecia converter à mão por isso fiz este pequeno script que junta o vídeo e as legendas num .mkv com o mesmo nome do episódio original. As legendas têm de estar com o mesmo nome do vídeo. Além disso aprendi a executar programas externos com o Python. Espero que ajude alguém! 😛 <3 life
maiden Posted June 20, 2006 at 04:44 PM Report #33941 Posted June 20, 2006 at 04:44 PM Muito bom! O path indica o caminho do ficheiro que queres abrir e o dir o caminho onde o ficheiro criado vai ser guardado não é? Já agora, tens mesmo de utilizar as duas barras (\\) ? Cumps,
Triton Posted June 20, 2006 at 04:49 PM Author Report #33943 Posted June 20, 2006 at 04:49 PM Muito bom! O path indica o caminho do ficheiro que queres abrir e o dir o caminho onde o ficheiro criado vai ser guardado não é? Já agora, tens mesmo de utilizar as duas barras (\\) ? Cumps, pathsw é o caminho para o programa mkvmerge que vem no package MKVToolnix que pode ser obtido na página do container .mkv (Matroska) http://www.matroska.org/. dir é o caminho para o directório com os ficheiros que queres converter. Para correr o programa precisas do módulo Path: http://www.jorendorff.com/articles/python/path/, que consiste num pequeno wrapper para as funcionalidades do módulo os que já vem com o Python. Serve para tornar os comandos mais compreensíveis e fáceis de ler. 😛 Se quiserem que explique algúma coisa ou que implemente alguma funcionalidade estou às ordens. Podias por só uma \ mas para isso tinhas de fazer assim: path = r'C:\etc...' O r vem de raw string. No Python, em qualquer string que não seja raw, a \ é um caracter de escape. \t é tab, \n é nova linha... etc... \\ é uma \. Se não perceberes diz que dou mais exemplos. <3 life
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now