Напишите простой скрипт на python для преобразования всех файлов .wav в определенной папке в .mp3 с использованием lame - PullRequest
1 голос
/ 07 августа 2011

Я хотел бы написать простой скрипт для конвертации нескольких дюжин .wav файлов, которые у меня есть в папке, в v0 mp3.Это не должно быть сложным, просто достаточно, чтобы сделать работу и помочь мне выучить немного Python в процессе;)

Я понял, что мне нужно будет использовать что-то вроде "изПодпроцесс импорта вызова ", чтобы сделать вызов" хромой ", но я застрял в том, как я могу написать остальное.Я написал сценарии bash для этого прежде, но в Windows они мне не очень полезны.

Я понимаю основы программирования на Python.

Ответы [ 2 ]

1 голос
/ 07 августа 2011

Вот пример, который работает по крайней мере на Ubuntu Linux. Если вы работаете в Windows, вам нужно изменить направление слешей.

import os
import os.path
import sys
from subprocess import call

def main():
    path = '/path/to/directory/'
    filenames = [
        filename
        for filename
        in os.listdir(path)
        if filename.endswith('.wav')
        ]
    for filename in filenames:
        call(['lame', '-V0',
              os.path.join(path, filename),
              os.path.join(path, '%s.mp3' % filename[:-4])
              ])
    return 0

if __name__ == '__main__':
    status = main()
    sys.exit(status)
0 голосов
/ 07 августа 2011

Это то, что я придумал до сих пор

#!/usr/bin/env python
import os

lamedir = 'lame'
searchdir = "/var/test"
name = []

for f in os.listdir(searchdir):
    name.append(f)

for files in name:
    iswav = files.find('.wav')
    #print files, iswav
    if(iswav >0):
        print lamedir + ' -h -V 6 ' + searchdir + files + ' ' + searchdir + files[:iswav]+'.mp3'
        os.system(lamedir + ' -h -V 6 ' + searchdir + files + " " + searchdir +  files[:iswav]+".mp3")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...