Retroceder   Foros del Web > Temas generales de computación > Programación > Python

Respuesta
 
Herramientas Desplegado
Antiguo 05-jul-2008, 23:59   #1 (permalink)
seu230 ha deshabilitado el karma
 
Fecha de Ingreso: noviembre-2004
Mensajes: 71
Ayuda con un bacth en python

Hola amigos espero que me puedan ayudar yo no estoy inmerso en la programacion en python pero estoy usando un software de edicion de video que creo usa algo de python a la hora automatizar su trabajo con varios archivos.

Es un software que tiene un menu llamado batch que permite automatizar su trabajo, este batch esta contenido en un archivo .py que contiene el sgte texto

Código:
# This example shows how to automatically generate multiple scripts given a 
# directory with several source files.  Note that this example doesn't even
# directly interact with the AvsP program itself, it's almost entirely using
# pure Python for batch processing, with conviniece gui functions provided by
# the avsp module.

import os

# Get the directory containing source files
dirname = avsp.GetDirectory(title='Selecciona carpeta con tus videos')

if dirname:
    # Generate each of the avisynth scripts
    for filename in os.listdir(dirname):
        fullname = os.path.join(dirname, filename)
        if os.path.isfile(fullname):
            # Get the extension-based template string
            srctxt = avsp.GetSourceString(fullname)
            # Create the script string
            # Write the script text to a file
            f = open(fullname + '.avs', 'w')
            f.write(srctxt)
            f.close()
Lo que hace este batch es llamar a una carpeta y crea scripts avisynth(extension .avs) de todos los archivos que contiene la carpeta en cuestion y antes de agregarle su extension .avs tambien le agrega la extension de cada uno de los archivos es decir si la carpeta a la que llamo contiene los sgts archivos:

unvideo.avi
unacancion.mp3
undocumento.doc

luego de aplicar el batch se crean los sgts archivos .avs:

unvideo.avi.avs
unacancion.mp3.avs
undocumento.doc.avs

Y lo que yo deseo es que el batch afecte solamente a los .avi y que tambien le quite el .avi es decir que me bote solamente lo sgte:

unvideo.avs

Espero puedan ayudarme para poder mejorar el uso de este software
Un saludo a toda la comunidad
seu230 está desconectado   Responder Citando
Antiguo 07-jul-2008, 08:04   #2 (permalink)
Colaborador
David el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy pronto
 
Avatar de David el Grande
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 7.170
De acuerdo Respuesta: Ayuda con un bacth en python

Puedes intentar reemplazando esto:
Código:
        if os.path.isfile(fullname):
            # Get the extension-based template string
            srctxt = avsp.GetSourceString(fullname)
            # Create the script string
            # Write the script text to a file
            f = open(fullname + '.avs', 'w')
            f.write(srctxt)
            f.close()
Por esto:
Código:
        if os.path.isfile(fullname) and fullname[-4:].lower=='.avi':
            # Get the extension-based template string
            srctxt = avsp.GetSourceString(fullname)
            # Create the script string
            # Write the script text to a file
            fullname = fullname[:-4]
            f = open(fullname + '.avs', 'w')
            f.write(srctxt)
            f.close()
Me avisas si te funciona. Saludos
__________________
"En la vida muchas veces tenemos que ser aprendices, y muchas veces maestros"
P.S.: Pregunta siempre en el foro correcto.
David el Grande está desconectado   Responder Citando
Antiguo 07-jul-2008, 10:46   #3 (permalink)
seu230 ha deshabilitado el karma
 
Fecha de Ingreso: noviembre-2004
Mensajes: 71
Respuesta: Ayuda con un bacth en python

Hola David el Grande hize el reemplazo pero no me funciona: me pide que llame a la carpeta pero no genera ningun archivo .avs

Un saludo
seu230 está desconectado   Responder Citando
Antiguo 07-jul-2008, 10:52   #4 (permalink)
Colaborador
David el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy prontoDavid el Grande llegará a ser famoso muy pronto
 
Avatar de David el Grande
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 7.170
Exclamación Respuesta: Ayuda con un bacth en python

Lo siento es que escribí mal el código. Debe ser:
Código:
        if os.path.isfile(fullname) and fullname[-4:].lower()=='.avi':
            # Get the extension-based template string
            srctxt = avsp.GetSourceString(fullname)
            # Create the script string
            # Write the script text to a file
            fullname = fullname[:-4]
            f = open(fullname + '.avs', 'w')
            f.write(srctxt)
            f.close()
Siempre se me olvidan los paréntesis...
__________________
"En la vida muchas veces tenemos que ser aprendices, y muchas veces maestros"
P.S.: Pregunta siempre en el foro correcto.
David el Grande está desconectado   Responder Citando
Antiguo 07-jul-2008, 11:48   #5 (permalink)
seu230 ha deshabilitado el karma
 
Fecha de Ingreso: noviembre-2004
Mensajes: 71
Respuesta: Ayuda con un bacth en python

Gracias David el Grande ahora si funciono
seu230 está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 10:15.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96