Tramposo aporte de python y vbs

Iniciado por tincopasan, 11 Julio 2016, 12:54 PM

0 Miembros y 1 Visitante están viendo este tema.

tincopasan

Muchas veces me pasa que algunos usuarios quieren reproducir los textos hablados en python. Ahora bien, python es multiplataforma etc, pero por suerte para mí, todos mis usuarios usan solo windows y del Seven en adelante(ninguno debugea y quieren los últimos jueguitos así que nadie tiene xp), lo cual dice adiós a multiplataforma, el incoveniente que sigo teniendo es que algunos todavía quieren usar python 2.x(al pedo sino tienen idea, pero lo tienen), por suerte la mayoría usa 3.x (lo cual a veces lleva a inconvenientes entre las versiones de las bibiotecas)asi que para ahorrarme instalarlas decidí usar vbs y SAPI5 (vienen por defecto en windows), para resumir un simple código de como hago trampas para reproducir los textos.Como siempre lo bueno de python que cada uno lo usa como quiere!
Código (python) [Seleccionar]

import os, subprocess
def hablar():
   global archivo
   temporal=os.getenv("temp") #obtengo el path del directorio temp
   nombre="\prueba.vbs"       #nombre del archvo que voy a escribir
   archivo= temporal+nombre   #concateno el path y el nombre
   
   arch=open(archivo,"w")     #para crear el archvo en modo escritura
   obligatorio = 'set speech = Wscript.CreateObject("SAPI.spVoice")'
   
   texto=input("Escriba lo que desea decir: ")
   cmd1= 'speech.speak "{}"'.format(texto)  #le doy formato a la linea a escribir en el archivo
     
   arch.write(obligatorio)
   arch.write("\n"+cmd1)
   arch.close()

hablar()
ejecutar="cscript " + archivo     #declaro todo el comando a usar en cmd
out= subprocess.check_output(ejecutar) #ejecuto el comando
os.remove(archivo)                     #borro el *.vbs



Saludos



Deliberar sobre las versiones de python es como la religión, cada uno cree lo que quiere y no por eso es absoluto.

MCKSys Argentina

#1
Cita de: tincopasan en 11 Julio 2016, 12:54 PM
... el incoveniente que sigo teniendo es que algunos todavía quieren usar python 2.x(al pedo sino tienen idea, pero lo tienen), por suerte la mayoría usa 3.x ...

No es tan así. Citando la wiki del propio python:

Citar
Python 2.x is legacy, Python 3.x is the present and future of the language

En muchísimas apps aún se usa 2.X. Eso no quita que en poco tiempo 3.X sea el standar, pero aún no lo es.

Saludos!

EDIT: Lectura interesante: http://learntocodewith.me/programming/python/python-2-vs-python-3/
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."