Necesito ayúda en Php y Python

¿Algunos de los presentes tiene conocimientos en php y/o Python?

Necesitaría ayúda para estos dos lenguajes.

De php quiero saber si se puede guardar directamente un archivo de php a exe.

De Python es algo un poco más complicado, hay un proyecto de código abierto el cual hace varias cosas, de las cuales me interesaría solo una de ellas para un proyecto.

Lo que necesitaría es que alguien con conocimientos en Python extragera solamente la parte que me interesa y me hiciera un exe con esa función.

Gracias.

Sólo te puedo ayudar de PHP. En estas direcciones puedes encontrar información:

Espero que te sirvan.

1 me gusta

Pregúntame sobre Python, trabajo a diario con ese lenguaje. No te puedo hacer un .exe con esa función pero si puedo hacer un .py que en una máquina con el intérprete de Python instalado equivale a un .exe, se puede ejecutar a través del intérprete.

Si me das más detalles te podré ayudar.

1 me gusta

Gracias a los dos por responder.

@Hidden ¿Conoces el programa youtube-dl?

Necesitaría la función que tiene de descargar de enlaces mpd, descarga y une los fragmentos del video y audio por separado y finalmente los une utilizando ffmpeg, necesitaría eso.

Teniendo el proyecto ¿Sabrías o podrías extraer esa función completa?

¿Tienes el intérprete de Python instalado en tu máquina?
¿Te serviría si creo un archivo .py al que puedas llamar desde la línea de comandos y le pases por un lado la url del vídeo y por otro el nombre con el que quieres que te lo guarde?
¿Tenías pensada otra idea para utilizar la función?

Voy a echar un vistazo al proyecto de youtube-dl.
Si me confirmas que te sirve así me pongo a intentarlo.

No, no lo tengo instalado, ni siquiera sé cual me serviría, una vez busqué el programa y no sé si aparecían varios y al no saber cual necesitaba lo dejé pasar.

Tampoco sé nada de Python, así que necesitaría alguna ayuda inicial y orientación.

En cuanto a eso, me sirve, si pudieras hacer que pusiera un nombre si el usuario no lo pone, sería perfecto, si no se puede, pues nada.

¿Te serviría si creo un archivo .py al que puedas llamar desde la línea
de comandos y le pases por un lado la url del vídeo y por otro el nombre
con el que quieres que te lo guarde?

Tenía pensado usarlo tal cual lo tienen en yt-dl.

¿Tenías pensada otra idea para utilizar la función?

A ver si me hago con una versión portable del intérprete y me familiarizo con el programa.

Gracias por tu ayuda.

De php, probé varios compiladores y dos consiguieron compilar pero con errores y por supuesto no funcionaba, quizás ya por la estructura de como estaba el php.

Así que no es tan fácil como pensaba, habría que recodificar y adaptarlo para poder compilarlo.

En cuanto a Python, encontré algún interprete portable, pero todavía no he podido probarlo, he estado algo atareado con un proyecto (de tantos) que tengo pendientes, así que a ver si tengo un hueco y lo pruebo, si consigo hacer funcionar algún interprete aviso.

1 me gusta

Os cuento, de todos los programas que encontré para crear un exe, no me ha funcionado ninguno, o soy muy torpe (que va a ser eso) o no era compatible con mi S.O.

No es fácil la cosa, ¿por qué necesitas crear un exe? Si nos cuentas tu idea igual se nos ocurre otra forma de llevarla a cabo.

Lo que quiero es “extraer” solamente la parte del programa que sirve para descargar enlaces “.mpd”.

Me interesa la parte del mpd, tanto para descargar como para unir los fragmentos, necesito crear un exe para poder usarlo con comandos cmd, como el archivo original con todas sus opciones.

Creo que si solamente extraigo eso, el programa pesará menos.

Yo creo que @Hidden quiere saber la idea completa del proyecto (yo también)
Por ejemplo: “quiero un programa al qufinal le meta una URL de YouTube, una URL de un archivo de audio, y que los mezcle y que me los descargue

Así podemos ayudarte mejor…

Técnicamente es posible hacer lo que dices. Ahora, no es tan fácil tampoco. Un poco de contexto antes.

Tanto PHP como Python son lenguajes interpretados, es decir que existe un programa que interpreta lo que uno escribe y ejecuta eso en el procesador. Esa facilidad es una complicación en situaciones como la que buscas. Esto debido a que para hacer que esa función se convierta en un ejecutable binario (EXE en Windows) necesitas también incluir todo el lenguaje PHP o Python, las bibliotecas que utiliza el programa y el programa en sí. Eso hará que el EXE sea muy grande, para lo que realmente hace, que pueden ser unas cuantas líneas de código. Esto es más o menos como intentar copiar un poema en algún idioma raro, que solo una persona habla, e intentar que se lea en castellano. Como solo hay una persona que lo habla, vas a necesitar, el poema, la persona juntas siempre.

Lo que yo haría es buscar alguien que “porte” o migre esas funciones a otro lenguaje que genere un EXE de tamaño razonable y que además será más eficiente de mantener.

1 me gusta

No pensé que fuera tan complicado, al no saber de esos lenguajes de ahí mi ignorancia en el tema.

La cosa es que no me gustaría decir explicitamente que lo quiero para tal proyecto porque no me gustaría recibir cierto mail amenazante procedente algún canal. (Creo que ya he dicho demasiado).

En cuanto al programa, necesito extraer la parte que tiene el mpd del youtube-dl, que es de código abierto.

Pensaba que era tan fácil como coger el archivo mpd.py y pasarlo a exe, pero por lo que ha comentado el compañero @rudygodoy no es tan fácil como pensaba, necesito las instrucciones que le digan al programa que es lo que es.

Bien, pues necesitaría las instrucciones del comando de mpd, que no se donde se alojarán, pero la idea es la siguiente:

Tienes un enlace con extensión .mpd y lo que quiero es que se puedan descargar los fragmentos que contiene ese enlace.

Para hacerlo, se utilizan los siguientes comandos:

Este comando te muestra las calidades disponibles (dentro del enlace)
youtube-dl -g --get-format --all-formats http://enlace.url.que.contiene.los.fragmentos.mpd

Este comando le dice donde quiere guardar el archivo y con qué nombre, además de seleccionar la calidad, que previamente ha mostrado.
youtube-dl -o “/VideoPrueba/Video.mp4” -f 1-2+1-10 http://enlace.url.que.contiene.los.fragmentos.mpd

Si no queremos elegir el nombre o la ruta donde queremos guardar el archivo, lo guardará allí donde está el ejecutable.

Este comando guarda la mejor calidad disponible tanto de audio como de video.
youtube-dl -f bestvideo+bestaudio http://enlace.url.que.contiene.los.fragmentos.mpd

Por lo que sé el programa utiliza ffmpeg para unir los fragmentos, pero leí en algún sitio que no es necesario aunque si recomendable para evitar problemas a la hora de reproducir el video resultante, ya que primero se descargan los fragmentos del video y los une en un archivo mp4, luego descarga y une los fragmentos del audio en un archivo mp3 y finalmente une ambos archivos en uno solo, uniendo así vídeo y audio.

Me quito el sombrero ante un símil tan coherente y tan bien explicado! :alfatu: (buscaba un emoticono de aplauso y/o respecto, pero ésto es lo más cercano que encontré)