From camilo.hernandez en gmail.com Sun May 3 18:56:14 2015 From: camilo.hernandez en gmail.com (Juan Camilo Hernandez Diaz) Date: Sun, 3 May 2015 11:56:14 -0500 Subject: [Python-es] Modulo subprocess y Script Perl Message-ID: Un saludo a todos. Tengo la necesidad de ejecutar un script en perl, el cual es provisto por un tercero; este básicamente efectúa una consulta y genera un archivo en un formato especifico. He programado una función en python que se encarga de ejecutar este archivo, y continuar la ejecución de las demás tareas. Sin embargo, este no se ejecuta como es debido (no genera el archivo de salida) Hasta el momento he probado con os.system, subsystem.call y subsystem.Popen, todos con el mismo resultado: *substr outside of string at /opt/tools/RT_reformat.pl line 77, line 15729* Igualmente, trate de generar un bash script que fuera llamado desde mi script python y ejecutara el modulo en perl; igual resultado. Cuando ejecuto el script directamente en bash funciona sin problemas y genera los archivos requeridos ¿Alguna sugerencia de como superar esto? Muchas gracias -- CAMILO HERNÁNDEZ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Sun May 3 21:31:58 2015 From: pych3m4 en gmail.com (Chema Cortes) Date: Sun, 3 May 2015 21:31:58 +0200 Subject: [Python-es] Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: El 3 de mayo de 2015, 18:56, Juan Camilo Hernandez Diaz < camilo.hernandez en gmail.com> escribió: > Un saludo a todos. > > Tengo la necesidad de ejecutar un script en perl, el cual es provisto por > un tercero; este básicamente efectúa una consulta y genera un archivo en un > formato especifico. > > He programado una función en python que se encarga de ejecutar este > archivo, y continuar la ejecución de las demás tareas. Sin embargo, este no > se ejecuta como es debido (no genera el archivo de salida) > > Hasta el momento he probado con os.system, subsystem.call y > subsystem.Popen, todos con el mismo resultado: > Entiendo que por "subsystem" te refieres a "subprocess" > > *substr outside of string at /opt/tools/RT_reformat.pl line 77, line > 15729* > > Igualmente, trate de generar un bash script que fuera llamado desde mi > script python y ejecutara el modulo en perl; igual resultado. > > Cuando ejecuto el script directamente en bash funciona sin problemas y > genera los archivos requeridos ¿Alguna sugerencia de como superar esto? > > Por el error, parece que el script de perl no encuentra nada en el stream de entrada . Cuando dices que el script "efectúa una consulta", probablemente espera encontrar algo que deberías suministrar. Tal vez, pida que le introduzcas un dato o simplemente pulsar una tecla para continuar. Por defecto, el proceso que lanza python no tiene ninguna entrada de datos. Puede que la documentación te ayude: https://docs.python.org/2/library/subprocess.html#replacing-older-functions-with-the-subprocess-module -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From camilo.hernandez en gmail.com Sun May 3 22:07:23 2015 From: camilo.hernandez en gmail.com (Juan Camilo Hernandez Diaz) Date: Sun, 3 May 2015 15:07:23 -0500 Subject: [Python-es] Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: Gracias por tu respuesta. Mira como estoy pasando los datos: *cmd = "/opt/tools/RT_reformat.pl"* *par = "{0}/{1}".format(os.getcwd(), fname)* *cmd_exe = subprocess.Popen([cmd, par], shell=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE)* *stdout, stderr = cmd_exe.communicate()* *print stdout, stderr* tambien probe con: cmd = *"/opt/tools/RT_reformat.pl **{0}/{1}".format(os.getcwd(), fname), eliminando logicamente lo referente a la variable par-* la variable *par* hace referencia a un archivo de texto (Sensor.2015022300) plano que contiene un listado de sensores y valores de temperatura, la salida del comando es un archivo en texto plano con un formato especifico ¿Estoy haciendo algo mal? 2015-05-03 14:31 GMT-05:00 Chema Cortes : > > > El 3 de mayo de 2015, 18:56, Juan Camilo Hernandez Diaz < > camilo.hernandez en gmail.com> escribió: > >> Un saludo a todos. >> >> Tengo la necesidad de ejecutar un script en perl, el cual es provisto por >> un tercero; este básicamente efectúa una consulta y genera un archivo en un >> formato especifico. >> >> He programado una función en python que se encarga de ejecutar este >> archivo, y continuar la ejecución de las demás tareas. Sin embargo, este no >> se ejecuta como es debido (no genera el archivo de salida) >> >> Hasta el momento he probado con os.system, subsystem.call y >> subsystem.Popen, todos con el mismo resultado: >> > > Entiendo que por "subsystem" te refieres a "subprocess" > > >> >> *substr outside of string at /opt/tools/RT_reformat.pl line 77, line >> 15729* >> >> Igualmente, trate de generar un bash script que fuera llamado desde mi >> script python y ejecutara el modulo en perl; igual resultado. >> >> Cuando ejecuto el script directamente en bash funciona sin problemas y >> genera los archivos requeridos ¿Alguna sugerencia de como superar esto? >> >> > > Por el error, parece que el script de perl no encuentra nada en el stream > de entrada . Cuando dices que el script "efectúa una consulta", > probablemente espera encontrar algo que deberías suministrar. Tal vez, pida > que le introduzcas un dato o simplemente pulsar una tecla para continuar. > Por defecto, el proceso que lanza python no tiene ninguna entrada de datos. > > Puede que la documentación te ayude: > > https://docs.python.org/2/library/subprocess.html#replacing-older-functions-with-the-subprocess-module > > > -- > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- JUAN CAMILO HERNÁNDEZ DÍAZ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Mon May 4 01:46:58 2015 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 4 May 2015 01:46:58 +0200 Subject: [Python-es] Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: El 3 de mayo de 2015, 22:07, Juan Camilo Hernandez Diaz < camilo.hernandez en gmail.com> escribió: > Gracias por tu respuesta. > > Mira como estoy pasando los datos: > > *cmd = "/opt/tools/RT_reformat.pl"* > *par = "{0}/{1}".format(os.getcwd(), fname)* > *cmd_exe = subprocess.Popen([cmd, par], shell=False, > stdout=subprocess.PIPE, stderr=subprocess.PIPE)* > *stdout, stderr = cmd_exe.communicate()* > *print stdout, stderr* > > tambien probe con: > cmd = *"/opt/tools/RT_reformat.pl **{0}/{1}".format(os.getcwd(), fname), > eliminando logicamente lo referente a la variable par-* > > la variable *par* hace referencia a un archivo de texto > (Sensor.2015022300) plano que contiene un listado de sensores y valores de > temperatura, la salida del comando es un archivo en texto plano con un > formato especifico ¿Estoy haciendo algo mal? > Está correcto (aunque mejor usar os.path.join para la ruta del fichero) Intuyo que hay una mala comunicación entre el script de perl y python. Parece como que el código python acabe antes de que el script de perl haya procesado todo el fichero. Precisamente, communicate debería esperar hasta que el subproceso acabe, pero puede que el script de perl se dedique a lanzar otros procesos que python no ve. Prueba a poner una espera (time.sleep()) antes de communicate a ver si termina bien. > > > 2015-05-03 14:31 GMT-05:00 Chema Cortes : > >> >> >> El 3 de mayo de 2015, 18:56, Juan Camilo Hernandez Diaz < >> camilo.hernandez en gmail.com> escribió: >> >>> Un saludo a todos. >>> >>> Tengo la necesidad de ejecutar un script en perl, el cual es provisto >>> por un tercero; este básicamente efectúa una consulta y genera un archivo >>> en un formato especifico. >>> >>> He programado una función en python que se encarga de ejecutar este >>> archivo, y continuar la ejecución de las demás tareas. Sin embargo, este no >>> se ejecuta como es debido (no genera el archivo de salida) >>> >>> Hasta el momento he probado con os.system, subsystem.call y >>> subsystem.Popen, todos con el mismo resultado: >>> >> >> Entiendo que por "subsystem" te refieres a "subprocess" >> >> >>> >>> *substr outside of string at /opt/tools/RT_reformat.pl line 77, >>> line 15729* >>> >>> Igualmente, trate de generar un bash script que fuera llamado desde mi >>> script python y ejecutara el modulo en perl; igual resultado. >>> >>> Cuando ejecuto el script directamente en bash funciona sin problemas y >>> genera los archivos requeridos ¿Alguna sugerencia de como superar esto? >>> >>> >> >> Por el error, parece que el script de perl no encuentra nada en el stream >> de entrada . Cuando dices que el script "efectúa una consulta", >> probablemente espera encontrar algo que deberías suministrar. Tal vez, pida >> que le introduzcas un dato o simplemente pulsar una tecla para continuar. >> Por defecto, el proceso que lanza python no tiene ninguna entrada de datos. >> >> Puede que la documentación te ayude: >> >> https://docs.python.org/2/library/subprocess.html#replacing-older-functions-with-the-subprocess-module >> >> >> -- >> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >> http://ch3m4.org/blog >> Buscador Python Hispano: http://ch3m4.org/python-es >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > JUAN CAMILO HERNÁNDEZ DÍAZ > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From alejandroacostaalamo en gmail.com Mon May 4 04:27:05 2015 From: alejandroacostaalamo en gmail.com (Alejandro Acosta) Date: Sun, 03 May 2015 21:57:05 -0430 Subject: [Python-es] Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: <5546D8F9.6020405@gmail.com> Hola, A mi lo que me extraña es que no funcione ni siquiera desde el script en bash..., tipicamente cuando esto falla es por tema de variables de entorno, en el propio script en bash asegurate que tengas el mismo ambiento que cuando estas logueado normalmente, con env puede verificar esto. Saludos, El 5/3/2015 a las 7:16 PM, Chema Cortes escribió: > > > El 3 de mayo de 2015, 22:07, Juan Camilo Hernandez Diaz > > escribió: > > Gracias por tu respuesta. > > Mira como estoy pasando los datos: > > /cmd = "/opt/tools/RT_reformat.pl"/ > /par = "{0}/{1}".format(os.getcwd(), fname)/ > /cmd_exe = subprocess.Popen([cmd, par], shell=False, > stdout=subprocess.PIPE, stderr=subprocess.PIPE)/ > /stdout, stderr = cmd_exe.communicate()/ > /print stdout, stderr/ > > tambien probe con: > cmd = /"/opt/tools/RT_reformat.pl //{0}/{1}".format(os.getcwd(), > fname), eliminando logicamente lo referente a la variable par-/ > > la variable *par* hace referencia a un archivo de texto > (Sensor.2015022300) plano que contiene un listado de sensores y > valores de temperatura, la salida del comando es un archivo en > texto plano con un formato especifico ¿Estoy haciendo algo mal? > > > Está correcto (aunque mejor usar os.path.join para la ruta del fichero) > > Intuyo que hay una mala comunicación entre el script de perl y python. > Parece como que el código python acabe antes de que el script de perl > haya procesado todo el fichero. Precisamente, communicate debería > esperar hasta que el subproceso acabe, pero puede que el script de > perl se dedique a lanzar otros procesos que python no ve. > > Prueba a poner una espera (time.sleep()) antes de communicate a ver si > termina bien. > > > > > > > 2015-05-03 14:31 GMT-05:00 Chema Cortes >: > > > > El 3 de mayo de 2015, 18:56, Juan Camilo Hernandez Diaz > > escribió: > > Un saludo a todos. > > Tengo la necesidad de ejecutar un script en perl, el cual > es provisto por un tercero; este básicamente efectúa una > consulta y genera un archivo en un formato especifico. > > He programado una función en python que se encarga de > ejecutar este archivo, y continuar la ejecución de las > demás tareas. Sin embargo, este no se ejecuta como es > debido (no genera el archivo de salida) > > Hasta el momento he probado con os.system, subsystem.call > y subsystem.Popen, todos con el mismo resultado: > > > Entiendo que por "subsystem" te refieres a "subprocess" > > > > /substr outside of string at /opt/tools/RT_reformat.pl > line 77, line 15729/ > > Igualmente, trate de generar un bash script que fuera > llamado desde mi script python y ejecutara el modulo en > perl; igual resultado. > > Cuando ejecuto el script directamente en bash funciona sin > problemas y genera los archivos requeridos ¿Alguna > sugerencia de como superar esto? > > > > Por el error, parece que el script de perl no encuentra nada > en el stream de entrada . Cuando dices que el script > "efectúa una consulta", probablemente espera encontrar algo > que deberías suministrar. Tal vez, pida que le introduzcas un > dato o simplemente pulsar una tecla para continuar. Por > defecto, el proceso que lanza python no tiene ninguna entrada > de datos. > > Puede que la documentación te ayude: > https://docs.python.org/2/library/subprocess.html#replacing-older-functions-with-the-subprocess-module > > > -- > Hyperreals *R "Quarks, bits y otras criaturas > infinitesimales": http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > > -- > JUAN CAMILO HERNÁNDEZ DÍAZ > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > > -- > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Mon May 4 15:10:31 2015 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 4 May 2015 15:10:31 +0200 Subject: [Python-es] Fwd: Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: [[reenvio de nuevo el mensaje a la lista]] Lo del os.path.join es un modo de hacerlo más "portable", si lo necesitaras: par = os.path.join(os.getcwd(), fname) o más directo par = os.path.abspath(fname) Seguramente que el script de perl esté lanzando sus propios PIPEs. Prueba a ejecutarlo con shell=True ---------- Mensaje reenviado ---------- De: Juan Camilo Hernandez Diaz Fecha: 4 de mayo de 2015, 4:50 Asunto: Re: [Python-es] Modulo subprocess y Script Perl Para: py en ch3m4.org ?Chema. Te cuento he probado la opcion del time.sleep(60)? y el problema persiste, también verifique con el env del bash y cuando es ejecutado muestra el mismo entorno. El os.path.join nunca lo he trabajado, me podrias ayudar con un ejemplo para ver que pasa? 2015-05-03 18:46 GMT-05:00 Chema Cortes : > > El 3 de mayo de 2015, 22:07, Juan Camilo Hernandez Diaz < > camilo.hernandez en gmail.com> escribió: > >> Gracias por tu respuesta. >> >> Mira como estoy pasando los datos: >> >> *cmd = "/opt/tools/RT_reformat.pl"* >> *par = "{0}/{1}".format(os.getcwd(), fname)* >> *cmd_exe = subprocess.Popen([cmd, par], shell=False, >> stdout=subprocess.PIPE, stderr=subprocess.PIPE)* >> *stdout, stderr = cmd_exe.communicate()* >> *print stdout, stderr* >> >> tambien probe con: >> cmd = *"/opt/tools/RT_reformat.pl **{0}/{1}".format(os.getcwd(), fname), >> eliminando logicamente lo referente a la variable par-* >> >> la variable *par* hace referencia a un archivo de texto (Sensor. >> 2015022300) plano que contiene un listado de sensores y valores de >> temperatura, la salida del comando es un archivo en texto plano con un >> formato especifico ¿Estoy haciendo algo mal? >> > > Está correcto (aunque mejor usar os.path.join para la ruta del fichero) > > Intuyo que hay una mala comunicación entre el script de perl y python. > Parece como que el código python acabe antes de que el script de perl haya > procesado todo el fichero. Precisamente, communicate debería esperar hasta > que el subproceso acabe, pero puede que el script de perl se dedique a > lanzar otros procesos que python no ve. > > Prueba a poner una espera (time.sleep()) antes de communicate a ver si > termina bien. > > > > >> >> >> 2015-05-03 14:31 GMT-05:00 Chema Cortes : >> >>> >>> >>> El 3 de mayo de 2015, 18:56, Juan Camilo Hernandez Diaz < >>> camilo.hernandez en gmail.com> escribió: >>> >>>> Un saludo a todos. >>>> >>>> Tengo la necesidad de ejecutar un script en perl, el cual es provisto >>>> por un tercero; este básicamente efectúa una consulta y genera un archivo >>>> en un formato especifico. >>>> >>>> He programado una función en python que se encarga de ejecutar este >>>> archivo, y continuar la ejecución de las demás tareas. Sin embargo, este no >>>> se ejecuta como es debido (no genera el archivo de salida) >>>> >>>> Hasta el momento he probado con os.system, subsystem.call y >>>> subsystem.Popen, todos con el mismo resultado: >>>> >>> >>> Entiendo que por "subsystem" te refieres a "subprocess" >>> >>> >>>> >>>> *substr outside of string at /opt/tools/RT_reformat.pl line 77, >>>> line 15729* >>>> >>>> Igualmente, trate de generar un bash script que fuera llamado desde mi >>>> script python y ejecutara el modulo en perl; igual resultado. >>>> >>>> Cuando ejecuto el script directamente en bash funciona sin problemas y >>>> genera los archivos requeridos ¿Alguna sugerencia de como superar esto? >>>> >>>> >>> >>> Por el error, parece que el script de perl no encuentra nada en el >>> stream de entrada . Cuando dices que el script "efectúa una consulta", >>> probablemente espera encontrar algo que deberías suministrar. Tal vez, pida >>> que le introduzcas un dato o simplemente pulsar una tecla para continuar. >>> Por defecto, el proceso que lanza python no tiene ninguna entrada de datos. >>> >>> Puede que la documentación te ayude: >>> >>> https://docs.python.org/2/library/subprocess.html#replacing-older-functions-with-the-subprocess-module >>> >>> >>> -- >>> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >>> http://ch3m4.org/blog >>> Buscador Python Hispano: http://ch3m4.org/python-es >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> JUAN CAMILO HERNÁNDEZ DÍAZ >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > -- JUAN CAMILO HERNÁNDEZ DÍAZ -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From fdanesse en gmail.com Tue May 5 18:12:25 2015 From: fdanesse en gmail.com (Flavio Danesse) Date: Tue, 5 May 2015 13:12:25 -0300 Subject: [Python-es] Fwd: Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: Te paso parte del código de una aplicación mía. Es un reproductor de audio video y streaming que tiene una interfaz gtk pero utiliza mplayer en modo esclavo para reproducir. Lo que hace es usar un mplayer precompilado con todos los plugins como reproductor. Eso lo accede a través de subpreocess. def play_archivo(self, direccion): ejecutable_cache_pantalla = "%s -cache %i -wid %i" % ( self.ejecutable, 1024, self.id_pantalla) estructura = "%s -slave -idle -nolirc -rtc -nomouseinput -noconsolecontrols -nojoystick" % (ejecutable_cache_pantalla) self.mplayer = subprocess.Popen( estructura, shell=True, stdin=subprocess.PIPE, stdout=open(STDOUT, "w+b"), stderr=open(STDOUT, "r+b"), universal_newlines=True) self.entrada = self.mplayer.stdin self.salida = open(STDOUT, "r") self.entrada.write("loadfile %s 0\n" % direccion) self.entrada.flush() Como verás, creo stdout y stderr como archivos para poder leer cada cierto tiempo lo que va tirando mplayer. stdin es un pipe al subproceso donde puedo escribir cuando quiera para poder pasarle las opciones que soporta mplayer en modo sclavo. Igual, en primera instancia no es importante nada de eso para lo que tu quieres hacer, solo te lo explico para aclararte mejor el codigo. El tema es que no debes usar comunicate por que no funciona, usa subprocess.Popen y pasale como primer parámetro lo que quieres ejecutar tomando en cuenta el detalle de que por ejemplo: si es un compilado que tienes en el directorio local como es el caso de este ejemplo, el ejecutable debes indicarlo como "./mplayer", si pones solo "mplayer", lo va a buscar al path del sistema y no ejecutará el que tienes en que tienes en tu directorio. El 4 de mayo de 2015, 10:10, Chema Cortes escribió: > [[reenvio de nuevo el mensaje a la lista]] > > Lo del os.path.join es un modo de hacerlo más "portable", si lo > necesitaras: > > par = os.path.join(os.getcwd(), fname) > > o más directo > > par = os.path.abspath(fname) > > > Seguramente que el script de perl esté lanzando sus propios PIPEs. Prueba > a ejecutarlo con shell=True > > > > ---------- Mensaje reenviado ---------- > De: Juan Camilo Hernandez Diaz > Fecha: 4 de mayo de 2015, 4:50 > Asunto: Re: [Python-es] Modulo subprocess y Script Perl > Para: py en ch3m4.org > > > ?Chema. > > Te cuento he probado la opcion del time.sleep(60)? y el problema > persiste, también verifique con el env del bash y cuando es ejecutado > muestra el mismo entorno. > > > El os.path.join nunca lo he trabajado, me podrias ayudar con un ejemplo > para ver que pasa? > > 2015-05-03 18:46 GMT-05:00 Chema Cortes : > > >> >> El 3 de mayo de 2015, 22:07, Juan Camilo Hernandez Diaz < >> camilo.hernandez en gmail.com> escribió: >> >>> Gracias por tu respuesta. >>> >>> Mira como estoy pasando los datos: >>> >>> *cmd = "/opt/tools/RT_reformat.pl"* >>> *par = "{0}/{1}".format(os.getcwd(), fname)* >>> *cmd_exe = subprocess.Popen([cmd, par], shell=False, >>> stdout=subprocess.PIPE, stderr=subprocess.PIPE)* >>> *stdout, stderr = cmd_exe.communicate()* >>> *print stdout, stderr* >>> >>> tambien probe con: >>> cmd = *"/opt/tools/RT_reformat.pl **{0}/{1}".format(os.getcwd(), >>> fname), eliminando logicamente lo referente a la variable par-* >>> >>> la variable *par* hace referencia a un archivo de texto (Sensor. >>> 2015022300) plano que contiene un listado de sensores y valores de >>> temperatura, la salida del comando es un archivo en texto plano con un >>> formato especifico ¿Estoy haciendo algo mal? >>> >> >> Está correcto (aunque mejor usar os.path.join para la ruta del fichero) >> >> Intuyo que hay una mala comunicación entre el script de perl y python. >> Parece como que el código python acabe antes de que el script de perl haya >> procesado todo el fichero. Precisamente, communicate debería esperar hasta >> que el subproceso acabe, pero puede que el script de perl se dedique a >> lanzar otros procesos que python no ve. >> >> Prueba a poner una espera (time.sleep()) antes de communicate a ver si >> termina bien. >> >> >> >> >>> >>> >>> 2015-05-03 14:31 GMT-05:00 Chema Cortes : >>> >>>> >>>> >>>> El 3 de mayo de 2015, 18:56, Juan Camilo Hernandez Diaz < >>>> camilo.hernandez en gmail.com> escribió: >>>> >>>>> Un saludo a todos. >>>>> >>>>> Tengo la necesidad de ejecutar un script en perl, el cual es provisto >>>>> por un tercero; este básicamente efectúa una consulta y genera un archivo >>>>> en un formato especifico. >>>>> >>>>> He programado una función en python que se encarga de ejecutar este >>>>> archivo, y continuar la ejecución de las demás tareas. Sin embargo, este no >>>>> se ejecuta como es debido (no genera el archivo de salida) >>>>> >>>>> Hasta el momento he probado con os.system, subsystem.call y >>>>> subsystem.Popen, todos con el mismo resultado: >>>>> >>>> >>>> Entiendo que por "subsystem" te refieres a "subprocess" >>>> >>>> >>>>> >>>>> *substr outside of string at /opt/tools/RT_reformat.pl line 77, >>>>> line 15729* >>>>> >>>>> Igualmente, trate de generar un bash script que fuera llamado desde mi >>>>> script python y ejecutara el modulo en perl; igual resultado. >>>>> >>>>> Cuando ejecuto el script directamente en bash funciona sin problemas y >>>>> genera los archivos requeridos ¿Alguna sugerencia de como superar esto? >>>>> >>>>> >>>> >>>> Por el error, parece que el script de perl no encuentra nada en el >>>> stream de entrada . Cuando dices que el script "efectúa una consulta", >>>> probablemente espera encontrar algo que deberías suministrar. Tal vez, pida >>>> que le introduzcas un dato o simplemente pulsar una tecla para continuar. >>>> Por defecto, el proceso que lanza python no tiene ninguna entrada de datos. >>>> >>>> Puede que la documentación te ayude: >>>> >>>> https://docs.python.org/2/library/subprocess.html#replacing-older-functions-with-the-subprocess-module >>>> >>>> >>>> -- >>>> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >>>> http://ch3m4.org/blog >>>> Buscador Python Hispano: http://ch3m4.org/python-es >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> >>> -- >>> JUAN CAMILO HERNÁNDEZ DÍAZ >>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >> http://ch3m4.org/blog >> Buscador Python Hispano: http://ch3m4.org/python-es >> > > > > -- > JUAN CAMILO HERNÁNDEZ DÍAZ > > > > > -- > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From camilo.hernandez en gmail.com Wed May 6 08:15:26 2015 From: camilo.hernandez en gmail.com (Juan Camilo Hernandez Diaz) Date: Wed, 6 May 2015 01:15:26 -0500 Subject: [Python-es] Fwd: Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: Flavio, voy a probar lo que me compartes. Por el momento estoy ejecutando el script con con os.system que funciono sin problemas. Estaré comentando. 2015-05-05 11:12 GMT-05:00 Flavio Danesse : > Te paso parte del código de una aplicación mía. > Es un reproductor de audio video y streaming que tiene una interfaz gtk > pero utiliza mplayer en modo esclavo para reproducir. > Lo que hace es usar un mplayer precompilado con todos los plugins como > reproductor. Eso lo accede a través de subpreocess. > > def play_archivo(self, direccion): > > ejecutable_cache_pantalla = "%s -cache %i -wid %i" % ( > self.ejecutable, 1024, self.id_pantalla) > > estructura = "%s -slave -idle -nolirc -rtc -nomouseinput > -noconsolecontrols -nojoystick" % (ejecutable_cache_pantalla) > > self.mplayer = subprocess.Popen( > estructura, shell=True, stdin=subprocess.PIPE, > stdout=open(STDOUT, "w+b"), > stderr=open(STDOUT, "r+b"), > universal_newlines=True) > > self.entrada = self.mplayer.stdin > self.salida = open(STDOUT, "r") > self.entrada.write("loadfile %s 0\n" % direccion) > self.entrada.flush() > > Como verás, creo stdout y stderr como archivos para poder leer cada cierto > tiempo lo que va tirando mplayer. > stdin es un pipe al subproceso donde puedo escribir cuando quiera para > poder pasarle las opciones que soporta mplayer en modo sclavo. Igual, en > primera instancia no es importante nada de eso para lo que tu quieres > hacer, solo te lo explico para aclararte mejor el codigo. El tema es que no > debes usar comunicate por que no funciona, usa subprocess.Popen y pasale > como primer parámetro lo que quieres ejecutar tomando en cuenta el detalle > de que por ejemplo: si es un compilado que tienes en el directorio local > como es el caso de este ejemplo, el ejecutable debes indicarlo como > "./mplayer", si pones solo "mplayer", lo va a buscar al path del sistema y > no ejecutará el que tienes en que tienes en tu directorio. > > El 4 de mayo de 2015, 10:10, Chema Cortes escribió: > >> [[reenvio de nuevo el mensaje a la lista]] >> >> Lo del os.path.join es un modo de hacerlo más "portable", si lo >> necesitaras: >> >> par = os.path.join(os.getcwd(), fname) >> >> o más directo >> >> par = os.path.abspath(fname) >> >> >> Seguramente que el script de perl esté lanzando sus propios PIPEs. Prueba >> a ejecutarlo con shell=True >> >> >> >> ---------- Mensaje reenviado ---------- >> De: Juan Camilo Hernandez Diaz >> Fecha: 4 de mayo de 2015, 4:50 >> Asunto: Re: [Python-es] Modulo subprocess y Script Perl >> Para: py en ch3m4.org >> >> >> ?Chema. >> >> Te cuento he probado la opcion del time.sleep(60)? y el problema >> persiste, también verifique con el env del bash y cuando es ejecutado >> muestra el mismo entorno. >> >> >> El os.path.join nunca lo he trabajado, me podrias ayudar con un ejemplo >> para ver que pasa? >> >> 2015-05-03 18:46 GMT-05:00 Chema Cortes : >> >> >>> >>> El 3 de mayo de 2015, 22:07, Juan Camilo Hernandez Diaz < >>> camilo.hernandez en gmail.com> escribió: >>> >>>> Gracias por tu respuesta. >>>> >>>> Mira como estoy pasando los datos: >>>> >>>> *cmd = "/opt/tools/RT_reformat.pl"* >>>> *par = "{0}/{1}".format(os.getcwd(), fname)* >>>> *cmd_exe = subprocess.Popen([cmd, par], shell=False, >>>> stdout=subprocess.PIPE, stderr=subprocess.PIPE)* >>>> *stdout, stderr = cmd_exe.communicate()* >>>> *print stdout, stderr* >>>> >>>> tambien probe con: >>>> cmd = *"/opt/tools/RT_reformat.pl **{0}/{1}".format(os.getcwd(), >>>> fname), eliminando logicamente lo referente a la variable par-* >>>> >>>> la variable *par* hace referencia a un archivo de texto (Sensor. >>>> 2015022300) plano que contiene un listado de sensores y valores de >>>> temperatura, la salida del comando es un archivo en texto plano con un >>>> formato especifico ¿Estoy haciendo algo mal? >>>> >>> >>> Está correcto (aunque mejor usar os.path.join para la ruta del fichero) >>> >>> Intuyo que hay una mala comunicación entre el script de perl y python. >>> Parece como que el código python acabe antes de que el script de perl haya >>> procesado todo el fichero. Precisamente, communicate debería esperar hasta >>> que el subproceso acabe, pero puede que el script de perl se dedique a >>> lanzar otros procesos que python no ve. >>> >>> Prueba a poner una espera (time.sleep()) antes de communicate a ver si >>> termina bien. >>> >>> >>> >>> >>>> >>>> >>>> 2015-05-03 14:31 GMT-05:00 Chema Cortes : >>>> >>>>> >>>>> >>>>> El 3 de mayo de 2015, 18:56, Juan Camilo Hernandez Diaz < >>>>> camilo.hernandez en gmail.com> escribió: >>>>> >>>>>> Un saludo a todos. >>>>>> >>>>>> Tengo la necesidad de ejecutar un script en perl, el cual es provisto >>>>>> por un tercero; este básicamente efectúa una consulta y genera un archivo >>>>>> en un formato especifico. >>>>>> >>>>>> He programado una función en python que se encarga de ejecutar este >>>>>> archivo, y continuar la ejecución de las demás tareas. Sin embargo, este no >>>>>> se ejecuta como es debido (no genera el archivo de salida) >>>>>> >>>>>> Hasta el momento he probado con os.system, subsystem.call y >>>>>> subsystem.Popen, todos con el mismo resultado: >>>>>> >>>>> >>>>> Entiendo que por "subsystem" te refieres a "subprocess" >>>>> >>>>> >>>>>> >>>>>> *substr outside of string at /opt/tools/RT_reformat.pl line 77, >>>>>> line 15729* >>>>>> >>>>>> Igualmente, trate de generar un bash script que fuera llamado desde >>>>>> mi script python y ejecutara el modulo en perl; igual resultado. >>>>>> >>>>>> Cuando ejecuto el script directamente en bash funciona sin problemas >>>>>> y genera los archivos requeridos ¿Alguna sugerencia de como superar esto? >>>>>> >>>>>> >>>>> >>>>> Por el error, parece que el script de perl no encuentra nada en el >>>>> stream de entrada . Cuando dices que el script "efectúa una consulta", >>>>> probablemente espera encontrar algo que deberías suministrar. Tal vez, pida >>>>> que le introduzcas un dato o simplemente pulsar una tecla para continuar. >>>>> Por defecto, el proceso que lanza python no tiene ninguna entrada de datos. >>>>> >>>>> Puede que la documentación te ayude: >>>>> >>>>> https://docs.python.org/2/library/subprocess.html#replacing-older-functions-with-the-subprocess-module >>>>> >>>>> >>>>> -- >>>>> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >>>>> http://ch3m4.org/blog >>>>> Buscador Python Hispano: http://ch3m4.org/python-es >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> >>>> -- >>>> JUAN CAMILO HERNÁNDEZ DÍAZ >>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> >>> -- >>> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >>> http://ch3m4.org/blog >>> Buscador Python Hispano: http://ch3m4.org/python-es >>> >> >> >> >> -- >> JUAN CAMILO HERNÁNDEZ DÍAZ >> >> >> >> >> -- >> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >> http://ch3m4.org/blog >> Buscador Python Hispano: http://ch3m4.org/python-es >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- JUAN CAMILO HERNÁNDEZ DÍAZ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From davidmenhur en gmail.com Wed May 6 13:26:24 2015 From: davidmenhur en gmail.com (=?UTF-8?B?RGHPgGlk?=) Date: Wed, 6 May 2015 13:26:24 +0200 Subject: [Python-es] Fwd: Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: 2015-05-06 8:15 GMT+02:00 Juan Camilo Hernandez Diaz < camilo.hernandez en gmail.com>: > Por el momento estoy ejecutando el script con con os.system que funciono > sin problemas. os.system es equivalente a subprocess.Popen con el argumento shell=True. /David. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From camilo.hernandez en gmail.com Wed May 6 19:04:26 2015 From: camilo.hernandez en gmail.com (Juan Camilo Hernandez Diaz) Date: Wed, 6 May 2015 12:04:26 -0500 Subject: [Python-es] Fwd: Modulo subprocess y Script Perl In-Reply-To: References: Message-ID: David. Tienes mucha razón en eso, la documentación del modulo así lo establece. Pero la inquietud ¿Por que funciona en uno y en el otro no? 2015-05-06 6:26 GMT-05:00 Da?id : > 2015-05-06 8:15 GMT+02:00 Juan Camilo Hernandez Diaz < > camilo.hernandez en gmail.com>: > >> Por el momento estoy ejecutando el script con con os.system que funciono >> sin problemas. > > > os.system es equivalente a subprocess.Popen con el argumento shell=True. > > > /David. > -- JUAN CAMILO HERNÁNDEZ DÍAZ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From ksian1685 en gmail.com Fri May 8 02:10:59 2015 From: ksian1685 en gmail.com (Alberto Perez) Date: Thu, 7 May 2015 21:10:59 -0300 Subject: [Python-es] Entity 'aacute' not defined Message-ID: Hola, Soy nuevo en python y siempre tuve problemas con el uso de expresiones regulares, sin embargo me animé a escribir un pequeño script que haga un par de peticiones ¨POST para obtener información de una página. El problema es que me arrojaba el siguiente error: lxml.etree.XMLSyntaxError: Entity 'aacute' not defined, line 1, column 3747 Googlé y descubrí que tengo que habilitar aacute en o algo así, probé con la librería codecs, pero no sé muy bien cómo usarla, porque me tira diferentes errores. Finalmente creí dar con la solución cuando usé ?escape? que me arrojó: lxml.etree.XMLSyntaxError: Start tag expected, '<' not found, line 1, column 1 solo debería borrar el carácter ese que está de más, entonces probé recorrer la variable usando la siguiente expresión: variable2=(escape(variable2)).replace(*">>"*,*">"*) variable2=(escape(variable2)).replace(*"<<"*,*"<"*) Más pienso el código y más me convenzo que mi problema está en el uso de expresiones regulares. Si quieren echar un vistazo, les dejo el código. Si a alguien se les ocurre una expresion regular que ponga fin a mi problema, gracias, sino dejaré el código en mi escritorio para cuando gane mayor experiencia en python import *httplib*, urllib, urllib2, re, *xml*, *codecs*, *unicodedata* from lxml import etree from lib2to3.fixer_util import *String* from xml.sax.saxutils import escape def *conectar*(CALLE, ALTURA): tablas_abre=*""* tablas_cierra=*"
"* parametros = urllib.urlencode({*'CALLE'*: CALLE,*'ALTURA'*: ALTURA, *'dedonde'*: *'fonos'*}) i=1 h_cookie=urllib2.HTTPCookieProcessor() opener= urllib2.build_opener(h_cookie) #f = urllib2.*urlopen*(" http://www.webdedatos.com/ZIPs/cpas/zipscalles.php", *parametros*) urllib2.install_opener(opener) f=urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php "*, parametros); #print f.read() aux=f.read() veces=int(cantidad(aux)) t=traer_solo_tabla(aux) #*cabeceras* = {"Content-type": "application/x-*www*-form-*urlencoded*","Accept": "text/plain"} #abrir_conexion = httplib.HTTPConnection("www.webdedatos.com:80") #abrir_conexion.request("POST", "/ZIPs/*cpas*/zipscalles.php", *parametros*, *cabeceras*) #*respuesta* = abrir_conexion.getresponse() #print respuesta.status i+1; while(i<=veces): f = urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php?verPagina= "* +str(veces)) veces=veces-1 aux3=f.read() t+=traer_solo_tabla(aux3) tablas=tablas_abre+t+tablas_cierra #print f.read() #t+=f.read() return tablas def *cantidad*(sitio): vari = re.search(*"1 de.+
"*,sitio) sub_palabra = vari.group(0) sub_palabra = sub_palabra.replace(*"1 de"*,*" "*) sub_palabra = sub_palabra.replace(*"
"*,*" "*) return sub_palabra def *traer_solo_tabla*(variable): vari = re.search(*"
"*,*" "*) variable2=variable2.replace(*""*,*" "*) variable2=variable2.replace(*"
"*,*" "*) variable2=variable2.replace(*"
"*,*" "*) variable2=variable2.replace(*"
"*,*" "*) variable2=(escape(variable2)).replace(*">>"*,*">"*) variable2=(escape(variable2)).replace(*"<<"*,*"<"*) regexp=re.compile(*""*) variable2=regexp.sub(*" "*,variable2) variable2=variable2.replace(*""*,*" "*) return variable2 def *imprimir*(tablas, BARRIO): #el codigo de imprimir lo copie de un foro solo le agregué escape para saber cual era el error print tablas tabla = etree.XML(escape(tablas)) rows = iter(tabla) *headers* = [col.text for col in next(rows)] for row in rows: values = [col.text for col in row] if(values[4]==BARRIO): print values def *main*(): ALTURA = int(input(*"ingrese la altura de la calle: "*)) CALLE = raw_input(*"ingrese el nombre de la calle: "*) BARRIO = raw_input(*"ingrese el nombre del barrio: "*) respuesta=conectar(CALLE, ALTURA) imprimir(respuesta, BARRIO) #print *tablas* if __name__ == *'__main__'*: main() Desde ya, muchas gracias. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From ecrespo en gmail.com Fri May 8 22:05:16 2015 From: ecrespo en gmail.com (Ernesto Crespo) Date: Fri, 8 May 2015 15:35:16 -0430 Subject: [Python-es] Utilizar Django con mongodb Message-ID: Saludos. Alguno tiene una guía de como poner a funcionar mongodb en Django?. Gracias de antemano. ------------ Seraph Ernesto Crespo Linux User No. 100996 Usando Debian wheezy- Kernel 3.10.0-031 http://ve.linkedin.com/in/ernestocrespo http:// *blog.crespo.org.ve * https://people.djangoproject.com/ecrespo/ https://github.com/ecrespo https://bitbucket.org/ecrespo https://twitter.com/_seraph1 https://www.facebook.com/ernesto.crespo https://plus.google.com/u/0/+ErnestoCrespo http://grooveshark.com/ernesto.crespo Huella de clave = 10D1 46D5 A1E8 B40F 0993 BC9A 9683 1307 C973 0469 (nueva a 4096 bits) Adelántate al futuro así tu mismo no lo veas- Seraph1 Buenas personas que trabajan juntas pueden crear grandes cosas. "El mundo está compuesto por dos tipos de personas, los que creen que son normales, y los que saben que eso no existe" Will McAvoy - The Newsroom "Liderar es diferente a dirigir. Liderar consiste en crear cambios en los que tu crees". Seth Godin Los que pueden, lo hacen; los que no, sólo saben quejarse. -Linus Torvalds ?Sé curioso. Lee mucho. Trata nuevas cosas. Creo que lo que mucha gente llama inteligencia solo se reduce a la curiosidad?. Aaron Swartz Innovar, es hacer que el futuro sea hoy - Seraph1 ?"Comienzo con la premisa de que la función del lider es producir más líderes, no más seguidores." Ralph Nader ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From chavarria1991 en gmail.com Tue May 12 12:43:12 2015 From: chavarria1991 en gmail.com (=?UTF-8?Q?Marcos_Chavarr=C3=ADa_Teijeiro?=) Date: Tue, 12 May 2015 12:43:12 +0200 Subject: [Python-es] Instalar datos con setup.py Message-ID: Hola! Estoy construyendo un programa para analizar los resultados de una batería de tests (en concreto de WebKitGTK). Esta batería de test proporciona un fichero json por cada ejecución. Mi programa debe guardar estos ficheros en un directorio para analizarlos posteriormente y conseguir, por ejemplo, desde cuando un test está fallando. Para agilizar el inicio del trabajo el programa guarda en propio repositorio una gran cantidad de estos resultados de forma que el usuario no tenga que descargarlos todos al inicio solo los nuevos. Me gustaría copiar dichos ficheros a otro directorio del sistema en concreto "~/.jsonresults" usando el script de instalación. He intentado usar la keyword data_files sin demasiado éxito. El problema es que para instalar el programa se tiene que ejecutar como sudo por lo que en vez de instalarlos en mi home lo hace en el de root. Seguro que es un "problema" recurrente y probablemente bastante trivial pero no se me ha ocurrido ninguna solución :(. Alguna idea?? Un saludo, Marcos Chavarría. From ezecastillo en gmail.com Tue May 12 13:15:09 2015 From: ezecastillo en gmail.com (Ezequiel) Date: Tue, 12 May 2015 08:15:09 -0300 Subject: [Python-es] Instalar datos con setup.py In-Reply-To: References: Message-ID: Hola! Para instalar de manera local (por defecto utiliza el directorio ~/.local/lib/pythonX.Y/) podés hacer: python setup.py install --user Para más información: python setup.py -h Saludos! Saludos! El may 12, 2015 7:44 AM, "Marcos Chavarría Teijeiro" < chavarria1991 en gmail.com> escribió: > Hola! > > Estoy construyendo un programa para analizar los resultados de una > batería de tests (en concreto de WebKitGTK). Esta batería de test > proporciona un fichero json por cada ejecución. Mi programa debe > guardar estos ficheros en un directorio para analizarlos > posteriormente y conseguir, por ejemplo, desde cuando un test está > fallando. Para agilizar el inicio del trabajo el programa guarda en > propio repositorio una gran cantidad de estos resultados de forma que > el usuario no tenga que descargarlos todos al inicio solo los nuevos. > > Me gustaría copiar dichos ficheros a otro directorio del sistema en > concreto "~/.jsonresults" usando el script de instalación. He > intentado usar la keyword data_files sin demasiado éxito. El problema > es que para instalar el programa se tiene que ejecutar como sudo por > lo que en vez de instalarlos en mi home lo hace en el de root. > > Seguro que es un "problema" recurrente y probablemente bastante > trivial pero no se me ha ocurrido ninguna solución :(. > > Alguna idea?? > > Un saludo, > Marcos Chavarría. > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From contacto en nekmo.com Tue May 12 15:57:02 2015 From: contacto en nekmo.com (Nekmo) Date: Tue, 12 May 2015 15:57:02 +0200 Subject: [Python-es] Instalar datos con setup.py In-Reply-To: References: Message-ID: Según he entendido, quieres crear directorios/archivos de configuración con el instalador. Bien, para mí, eso es una mala idea, porque todo lo que se encuentra en la HOME, es susceptible de ser borrado (para reiniciar la configuración), además de que limita tu programa a los usuarios que hubiesen cuando se instaló el programa. Lo más normal, sería que se comprobase que dicho directorio/archivo existe con cada inicio del programa, y si no existen crearlos. Un cordial saludo: -- Nekmo. Sitio web: http://nekmo.com Dirección de contacto: contacto en nekmo.com XMPP/Jabber: contacto en nekmo.com Google+: Nekmo Com El día 12 de mayo de 2015, 13:15, Ezequiel escribió: > Hola! > > Para instalar de manera local (por defecto utiliza el directorio > ~/.local/lib/pythonX.Y/) podés hacer: > > python setup.py install --user > > Para más información: > > python setup.py -h > > Saludos! > Saludos! > > El may 12, 2015 7:44 AM, "Marcos Chavarría Teijeiro" > escribió: >> >> Hola! >> >> Estoy construyendo un programa para analizar los resultados de una >> batería de tests (en concreto de WebKitGTK). Esta batería de test >> proporciona un fichero json por cada ejecución. Mi programa debe >> guardar estos ficheros en un directorio para analizarlos >> posteriormente y conseguir, por ejemplo, desde cuando un test está >> fallando. Para agilizar el inicio del trabajo el programa guarda en >> propio repositorio una gran cantidad de estos resultados de forma que >> el usuario no tenga que descargarlos todos al inicio solo los nuevos. >> >> Me gustaría copiar dichos ficheros a otro directorio del sistema en >> concreto "~/.jsonresults" usando el script de instalación. He >> intentado usar la keyword data_files sin demasiado éxito. El problema >> es que para instalar el programa se tiene que ejecutar como sudo por >> lo que en vez de instalarlos en mi home lo hace en el de root. >> >> Seguro que es un "problema" recurrente y probablemente bastante >> trivial pero no se me ha ocurrido ninguna solución :(. >> >> Alguna idea?? >> >> Un saludo, >> Marcos Chavarría. >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > From bertothunder en gmail.com Wed May 13 10:28:13 2015 From: bertothunder en gmail.com (Alberto Curro) Date: Wed, 13 May 2015 09:28:13 +0100 Subject: [Python-es] Utilizar Django con mongodb In-Reply-To: References: Message-ID: Hola, El 8 de mayo de 2015, 21:05, Ernesto Crespo escribió: > Saludos. > Alguno tiene una guía de como poner a funcionar mongodb en Django?. > Me pregunto si probaste a preguntarle esto mismo a google?? La primera entrada de resultados creo que es justo lo que buscas: http://www.ibm.com/developerworks/library/os-django-mongo/index.html > > > Gracias de antemano. > > > ------------ > Seraph > Ernesto Crespo > Linux User No. 100996 > Usando Debian wheezy- Kernel 3.10.0-031 > http://ve.linkedin.com/in/ernestocrespo > http:// *blog.crespo.org.ve > * > https://people.djangoproject.com/ecrespo/ > https://github.com/ecrespo > https://bitbucket.org/ecrespo > https://twitter.com/_seraph1 > https://www.facebook.com/ernesto.crespo > https://plus.google.com/u/0/+ErnestoCrespo > http://grooveshark.com/ernesto.crespo > Huella de clave = 10D1 46D5 A1E8 B40F 0993 BC9A 9683 1307 C973 0469 > (nueva a 4096 bits) > Adelántate al futuro así tu mismo no lo veas- Seraph1 > Buenas personas que trabajan juntas pueden crear grandes cosas. > "El mundo está compuesto por dos tipos de personas, los que creen que son > normales, y los que saben que eso no existe" Will McAvoy - The Newsroom > "Liderar es diferente a dirigir. Liderar consiste en crear cambios en los > que tu crees". Seth Godin > Los que pueden, lo hacen; los que no, sólo saben quejarse. -Linus Torvalds > ?Sé curioso. Lee mucho. Trata nuevas cosas. Creo que lo que mucha gente > llama inteligencia solo se reduce a la curiosidad?. Aaron Swartz > Innovar, es hacer que el futuro sea hoy - Seraph1 > ?"Comienzo con la premisa de que la función del lider es producir más > líderes, no más seguidores." Ralph Nader > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From dani en damufo.com Thu May 14 14:13:35 2015 From: dani en damufo.com (Dani) Date: Thu, 14 May 2015 14:13:35 +0200 Subject: [Python-es] Error en consulta sqlite Message-ID: <5554916F.4040900@damufo.com> Hola: SO debian Jessie Python 2.7.9 pySQLite: 2.6.0 SQLite: 3.8.7.1 Estoy tratando de ejecutar una consulta que lleva un left join. Cuando la realizo desde python aparecen registros de más el count es 833 Sin embargo si hago la misma consulta desde la consola con sqlite3 o desde la extensión de firefox sqlitemanager el resultado es 547 (que es lo correcto). Recientemente actualicé de debian wheezy a jessie y me da que puede ser algo de la versión del pysqlite Alguien sabe que puede ser? hay forma de cambiar la versión del pysqlite para ver si es eso Traté de actualizar el pysqlite $ sudo pip install pysqlite con pero sale el error: error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 Gracias -- Dani ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kikocorreoso en gmail.com Thu May 14 14:31:41 2015 From: kikocorreoso en gmail.com (Kiko) Date: Thu, 14 May 2015 14:31:41 +0200 Subject: [Python-es] Error en consulta sqlite In-Reply-To: <5554916F.4040900@damufo.com> References: <5554916F.4040900@damufo.com> Message-ID: El 14 de mayo de 2015, 14:13, Dani escribió: > Hola: > > SO debian Jessie > Python 2.7.9 > pySQLite: 2.6.0 > SQLite: 3.8.7.1 > > Estoy tratando de ejecutar una consulta que lleva un left join. > Cuando la realizo desde python aparecen registros de más el count es 833 > Sin embargo si hago la misma consulta desde la consola con sqlite3 o desde > la extensión de firefox sqlitemanager el resultado es 547 (que es lo > correcto). > Qué código python estás usando > > Recientemente actualicé de debian wheezy a jessie y me da que puede ser > algo de la versión del pysqlite > > Alguien sabe que puede ser? > > hay forma de cambiar la versión del pysqlite para ver si es eso > Traté de actualizar el pysqlite > $ sudo pip install pysqlite > > con pero sale el error: error: command 'x86_64-linux-gnu-gcc' failed with > exit status 1 > > Puedes poner el error completo? > Gracias > > prueba lo siguiente: *sudo apt-get install python-dev sqlite3-dev * (lo digo de cabeza y puede que no sea exactamente así, estoy en un windows ahora) *sudo pip install --upgrade pysqlite* ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From dani en damufo.com Thu May 14 14:42:21 2015 From: dani en damufo.com (Dani) Date: Thu, 14 May 2015 14:42:21 +0200 Subject: [Python-es] Error en consulta sqlite In-Reply-To: References: <5554916F.4040900@damufo.com> Message-ID: <5554982D.8010008@damufo.com> Hola: Gracias por la ayuda Si, para el error instalando la versión de pysqlite 2.6.3 era ese el error. Instalé el /sqlite3-dev y ya instaló e pysqlite versión 2.6.3 El caso es que al ejecutar el código import sqlite3 as sqlite print "pySQLite: ", sqlite.version print "SQLite: ", sqlite.sqlite_version sique indicando: pySQLite: 2.6.0 SQLite: 3.8.7.1 incluso borré la carpeta /usr/local/lib/python2.7/dist-packages/pysqlite2 y sigue usando la misma versión. y sigue pasando lo mismo alguna idea? Gracias / Dani On 14/05/15 14:31, Kiko wrote: > > > El 14 de mayo de 2015, 14:13, Dani > escribió: > > Hola: > > SO debian Jessie > Python 2.7.9 > pySQLite: 2.6.0 > SQLite: 3.8.7.1 > > Estoy tratando de ejecutar una consulta que lleva un left join. > Cuando la realizo desde python aparecen registros de más el count > es 833 > Sin embargo si hago la misma consulta desde la consola con sqlite3 > o desde la extensión de firefox sqlitemanager el resultado es 547 > (que es lo correcto). > > > Qué código python estás usando > > > Recientemente actualicé de debian wheezy a jessie y me da que > puede ser algo de la versión del pysqlite > > Alguien sabe que puede ser? > > hay forma de cambiar la versión del pysqlite para ver si es eso > Traté de actualizar el pysqlite > $ sudo pip install pysqlite > > con pero sale el error: error: command 'x86_64-linux-gnu-gcc' > failed with exit status 1 > > > Puedes poner el error completo? > > Gracias > > > prueba lo siguiente: > /sudo apt-get install python-dev sqlite3-dev / > (lo digo de cabeza y puede que no sea exactamente así, estoy en un > windows ahora) > /sudo pip install --upgrade pysqlite/ > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kikocorreoso en gmail.com Thu May 14 14:56:18 2015 From: kikocorreoso en gmail.com (Kiko) Date: Thu, 14 May 2015 14:56:18 +0200 Subject: [Python-es] Error en consulta sqlite In-Reply-To: <5554982D.8010008@damufo.com> References: <5554916F.4040900@damufo.com> <5554982D.8010008@damufo.com> Message-ID: El 14 de mayo de 2015, 14:42, Dani escribió: > Hola: > > Gracias por la ayuda > > Si, para el error instalando la versión de pysqlite 2.6.3 era ese el error. > Instalé el > > > > > > > > > > > > > > > > > > > > *sqlite3-dev y ya instaló e pysqlite versión 2.6.3 El caso es que al > ejecutar el código import sqlite3 as sqlite print "pySQLite: ", > sqlite.version print "SQLite: ", sqlite.sqlite_version sique indicando: > pySQLite: 2.6.0 SQLite: 3.8.7.1 incluso borré la carpeta > /usr/local/lib/python2.7/dist-packages/pysqlite2 y sigue usando la misma > versión. y sigue pasando lo mismo alguna idea?* > Pues sin saber muy bien como tienes las cosas montadas en tu equipo. Por qué no montas un virtualenv e instalas ahí lo que necesitas para descartar temas de versiones? https://pypi.python.org/pypi/virtualenv > > > > > > * Gracias * > > Dani > > On 14/05/15 14:31, Kiko wrote: > > > > El 14 de mayo de 2015, 14:13, Dani escribió: > >> Hola: >> >> SO debian Jessie >> Python 2.7.9 >> pySQLite: 2.6.0 >> SQLite: 3.8.7.1 >> >> Estoy tratando de ejecutar una consulta que lleva un left join. >> Cuando la realizo desde python aparecen registros de más el count es 833 >> Sin embargo si hago la misma consulta desde la consola con sqlite3 o >> desde la extensión de firefox sqlitemanager el resultado es 547 (que es lo >> correcto). >> > > Qué código python estás usando > > >> >> Recientemente actualicé de debian wheezy a jessie y me da que puede ser >> algo de la versión del pysqlite >> >> Alguien sabe que puede ser? >> >> hay forma de cambiar la versión del pysqlite para ver si es eso >> Traté de actualizar el pysqlite >> $ sudo pip install pysqlite >> >> con pero sale el error: error: command 'x86_64-linux-gnu-gcc' failed with >> exit status 1 >> >> > Puedes poner el error completo? > > >> Gracias >> >> > prueba lo siguiente: > *sudo apt-get install python-dev sqlite3-dev * > (lo digo de cabeza y puede que no sea exactamente así, estoy en un windows > ahora) > *sudo pip install --upgrade pysqlite* > > > > _______________________________________________ > Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From ksian1685 en gmail.com Thu May 14 16:01:28 2015 From: ksian1685 en gmail.com (Alberto Perez) Date: Thu, 14 May 2015 11:01:28 -0300 Subject: [Python-es] Error en consulta sqlite In-Reply-To: References: <5554916F.4040900@damufo.com> <5554982D.8010008@damufo.com> Message-ID: seguro que ya lo probaste, pero igual lo sugiero: reinstala. sudo apt-get remove (lo que queres borrar) y luego sudo apt-get install (lo que queres instalar) 2015-05-14 9:56 GMT-03:00 Kiko : > > > El 14 de mayo de 2015, 14:42, Dani escribió: > >> Hola: >> >> Gracias por la ayuda >> >> Si, para el error instalando la versión de pysqlite 2.6.3 era ese el >> error. >> Instalé el >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> *sqlite3-dev y ya instaló e pysqlite versión 2.6.3 El caso es que al >> ejecutar el código import sqlite3 as sqlite print "pySQLite: ", >> sqlite.version print "SQLite: ", sqlite.sqlite_version sique indicando: >> pySQLite: 2.6.0 SQLite: 3.8.7.1 incluso borré la carpeta >> /usr/local/lib/python2.7/dist-packages/pysqlite2 y sigue usando la misma >> versión. y sigue pasando lo mismo alguna idea?* >> > > Pues sin saber muy bien como tienes las cosas montadas en tu equipo. > > Por qué no montas un virtualenv e instalas ahí lo que necesitas para > descartar temas de versiones? > https://pypi.python.org/pypi/virtualenv > > > >> >> >> >> >> >> * Gracias * >> >> Dani >> >> On 14/05/15 14:31, Kiko wrote: >> >> >> >> El 14 de mayo de 2015, 14:13, Dani escribió: >> >>> Hola: >>> >>> SO debian Jessie >>> Python 2.7.9 >>> pySQLite: 2.6.0 >>> SQLite: 3.8.7.1 >>> >>> Estoy tratando de ejecutar una consulta que lleva un left join. >>> Cuando la realizo desde python aparecen registros de más el count es 833 >>> Sin embargo si hago la misma consulta desde la consola con sqlite3 o >>> desde la extensión de firefox sqlitemanager el resultado es 547 (que es lo >>> correcto). >>> >> >> Qué código python estás usando >> >> >>> >>> Recientemente actualicé de debian wheezy a jessie y me da que puede ser >>> algo de la versión del pysqlite >>> >>> Alguien sabe que puede ser? >>> >>> hay forma de cambiar la versión del pysqlite para ver si es eso >>> Traté de actualizar el pysqlite >>> $ sudo pip install pysqlite >>> >>> con pero sale el error: error: command 'x86_64-linux-gnu-gcc' failed >>> with exit status 1 >>> >>> >> Puedes poner el error completo? >> >> >>> Gracias >>> >>> >> prueba lo siguiente: >> *sudo apt-get install python-dev sqlite3-dev * >> (lo digo de cabeza y puede que no sea exactamente así, estoy en un >> windows ahora) >> *sudo pip install --upgrade pysqlite* >> >> >> >> _______________________________________________ >> Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From dani en damufo.com Thu May 14 16:34:32 2015 From: dani en damufo.com (Dani) Date: Thu, 14 May 2015 16:34:32 +0200 Subject: [Python-es] Error en consulta sqlite In-Reply-To: References: <5554916F.4040900@damufo.com> <5554982D.8010008@damufo.com> Message-ID: <5554B278.7050306@damufo.com> Hola Kiko y Alberto: El problema es que el pysqlite va integrado en el python 2.7 He creado e entorno virtual con virtualenv y la salida del código es la misma sys.version_info(major=2, minor=7, micro=9, releaselevel='final', serial=0) pySQLite: 2.6.0 SQLite: 3.8.7.1 registros 833 fin Como el código importaba wx y usar wx en entornos virtuales en complicado, he hecho un código que ejecutase la consulta en la base de datos, con los mismos parámetros de conexión. El código es este: -------------------------------------------------- import sys import sqlite3 as sqlite print sys.version_info print "pySQLite: ", sqlite.version print "SQLite: ", sqlite.sqlite_version path = "basededatos.sqlite" conexion = sqlite.connect(path) cursor = conexion.cursor() cursor.execute("PRAGMA cache_size=200000") cursor.execute('PRAGMA encoding="UTF-8";') sql="""SELECT....""" cursor.execute(sql) rows = cursor.fetchall() print "registros", len(rows) cursor.close() conexion.close() print "fin" ---------------------------------------- el resultado ejecutándolo desde el entornovirtual es el mimo: sys.version_info(major=2, minor=7, micro=9, releaselevel='final', serial=0) pySQLite: 2.6.0 SQLite: 3.8.7.1 registros 833 fin --------------- me llama la atención que estando instalado el pysqlite 2.6.3 siga usando el 2.6.0, como haría para usar la nueva versión en el entorno virtual? En todo caso encontré la solución (o el problema), al hacerlo se me ocurrió comentar la línea: cursor.execute("PRAGMA cache_size=200000") y el recuento pasó a ser: 547 el correcto!!! Despues descomenté y añadi un cero al cache_size, quedando así: cursor.execute("PRAGMA cache_size=2000000") y tambien funciona si quito ceros, por ejemplo cursor.execute("PRAGMA cache_size=200") Mis conocimientos no son suficientes como para comprender esto. En definitiva, me quedo con dos dudas Una es como hacer para usar una versión distinta del pysqlite de la instalada con el python La otra es este comportamiento del cache_size. En todo caso, muchisimas gracias por vuestra ayuda. Dani On 14/05/15 16:01, Alberto Perez wrote: > seguro que ya lo probaste, pero igual lo sugiero: reinstala. > sudo apt-get remove (lo que queres borrar) y luego sudo apt-get > install (lo que queres instalar) > > 2015-05-14 9:56 GMT-03:00 Kiko >: > > > > El 14 de mayo de 2015, 14:42, Dani > escribió: > > Hola: > > Gracias por la ayuda > > Si, para el error instalando la versión de pysqlite 2.6.3 era > ese el error. > Instalé el > /sqlite3-dev > y ya instaló e pysqlite versión 2.6.3 > > El caso es que al ejecutar el código > import sqlite3 as sqlite > print "pySQLite: ", sqlite.version > print "SQLite: ", sqlite.sqlite_version > > sique indicando: > pySQLite: 2.6.0 > SQLite: 3.8.7.1 > > incluso borré la carpeta > /usr/local/lib/python2.7/dist-packages/pysqlite2 > > y sigue usando la misma versión. > > y sigue pasando lo mismo > > alguna idea? > / > > > Pues sin saber muy bien como tienes las cosas montadas en tu equipo. > > Por qué no montas un virtualenv e instalas ahí lo que necesitas > para descartar temas de versiones? > https://pypi.python.org/pypi/virtualenv > > > / > Gracias > > > > / > > Dani > > On 14/05/15 14:31, Kiko wrote: >> >> >> El 14 de mayo de 2015, 14:13, Dani > > escribió: >> >> Hola: >> >> SO debian Jessie >> Python 2.7.9 >> pySQLite: 2.6.0 >> SQLite: 3.8.7.1 >> >> Estoy tratando de ejecutar una consulta que lleva un left >> join. >> Cuando la realizo desde python aparecen registros de más >> el count es 833 >> Sin embargo si hago la misma consulta desde la consola >> con sqlite3 o desde la extensión de firefox sqlitemanager >> el resultado es 547 (que es lo correcto). >> >> >> Qué código python estás usando >> >> >> Recientemente actualicé de debian wheezy a jessie y me da >> que puede ser algo de la versión del pysqlite >> >> Alguien sabe que puede ser? >> >> hay forma de cambiar la versión del pysqlite para ver si >> es eso >> Traté de actualizar el pysqlite >> $ sudo pip install pysqlite >> >> con pero sale el error: error: command >> 'x86_64-linux-gnu-gcc' failed with exit status 1 >> >> >> Puedes poner el error completo? >> >> Gracias >> >> >> prueba lo siguiente: >> /sudo apt-get install python-dev sqlite3-dev / >> (lo digo de cabeza y puede que no sea exactamente así, estoy >> en un windows ahora) >> /sudo pip install --upgrade pysqlite/ >> >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ:http://python-es-faq.wikidot.com/ > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From yourpadre en gmail.com Sat May 16 19:11:56 2015 From: yourpadre en gmail.com (Miguel Beltran R.) Date: Sat, 16 May 2015 12:11:56 -0500 Subject: [Python-es] Entity 'aacute' not defined In-Reply-To: References: Message-ID: Parece que tienes algo en tu función "escape" que modifica la pagina (en etree.XML(escape(tablas))) "aacute" deberia ser "á" que se muetra como "á" Otra cosa es que no creo que sea conveniente usar expreciones regulares, ¿seguro que no lo puedes hacer usando solo el selector de lxml? El 7 de mayo de 2015, 19:10, Alberto Perez escribió: > Hola, > > Soy nuevo en python y siempre tuve problemas con el uso de expresiones > regulares, sin embargo me animé a escribir un pequeño script que haga un > par de peticiones ¨POST para obtener información de una página. El problema > es que me arrojaba el siguiente error: lxml.etree.XMLSyntaxError: Entity > 'aacute' not defined, line 1, column 3747 > > Googlé y descubrí que tengo que habilitar aacute en o algo así, > probé con la librería codecs, pero no sé muy bien cómo usarla, porque me > tira diferentes errores. Finalmente creí dar con la solución cuando usé > ?escape? que me arrojó: lxml.etree.XMLSyntaxError: Start tag expected, > '<' not found, line 1, column 1 > > solo debería borrar el carácter ese que está de más, entonces probé > recorrer la variable usando la siguiente expresión: > > variable2=(escape(variable2)).replace(*">>"*,*">"*) > > variable2=(escape(variable2)).replace(*"<<"*,*"<"*) > > Más pienso el código y más me convenzo que mi problema está en el uso de > expresiones regulares. Si quieren echar un vistazo, les dejo el código. Si > a alguien se les ocurre una expresion regular que ponga fin a mi problema, > gracias, sino dejaré el código en mi escritorio para cuando gane mayor > experiencia en python > > > > import *httplib*, urllib, urllib2, re, *xml*, *codecs*, *unicodedata* > > from lxml import etree > > from lib2to3.fixer_util import *String* > > from xml.sax.saxutils import escape > > > > def *conectar*(CALLE, ALTURA): > > > > tablas_abre=*""* > > tablas_cierra=*"
"* > > > > parametros = urllib.urlencode({*'CALLE'*: CALLE,*'ALTURA'*: ALTURA, > *'dedonde'*: *'fonos'*}) > > i=1 > > h_cookie=urllib2.HTTPCookieProcessor() > > opener= urllib2.build_opener(h_cookie) > > #f = urllib2.*urlopen*(" > http://www.webdedatos.com/ZIPs/cpas/zipscalles.php", *parametros*) > > urllib2.install_opener(opener) > > f=urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php > "*, parametros); > > #print f.read() > > aux=f.read() > > veces=int(cantidad(aux)) > > > > t=traer_solo_tabla(aux) > > > > #*cabeceras* = {"Content-type": "application/x-*www*-form-*urlencoded*","Accept": > "text/plain"} > > #abrir_conexion = httplib.HTTPConnection("www.webdedatos.com:80") > > #abrir_conexion.request("POST", "/ZIPs/*cpas*/zipscalles.php", > *parametros*, *cabeceras*) > > #*respuesta* = abrir_conexion.getresponse() > > #print respuesta.status > > i+1; > > while(i<=veces): > > f = urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php?verPagina= > "* > +str(veces)) > > veces=veces-1 > > aux3=f.read() > > t+=traer_solo_tabla(aux3) > > tablas=tablas_abre+t+tablas_cierra > > #print f.read() > > #t+=f.read() > > > > return tablas > > > > def *cantidad*(sitio): > > vari = re.search(*"1 de.+
"*,sitio) > > sub_palabra = vari.group(0) > > sub_palabra = sub_palabra.replace(*"1 de"*,*" "*) > > sub_palabra = sub_palabra.replace(*"
"*,*" "*) > > return sub_palabra > > > > def *traer_solo_tabla*(variable): > > vari = re.search(*"
> variable2 = vari.group() > > > > variable2=variable2.replace(*"
"*,*" "*) > > > > variable2=variable2.replace(*""*,*" "*) > > variable2=variable2.replace(*"
"*,*" "*) > > > > > > variable2=variable2.replace(*"
"*,*" "*) > > variable2=variable2.replace(*"
"*,*" "*) > > variable2=(escape(variable2)).replace(*">>"*,*">"*) > > variable2=(escape(variable2)).replace(*"<<"*,*"<"*) > > > > regexp=re.compile(*" href=..........................................>"*) > > variable2=regexp.sub(*" "*,variable2) > > variable2=variable2.replace(*""*,*" "*) > > return variable2 > > > > def *imprimir*(tablas, BARRIO): > > #el codigo de imprimir lo copie de un foro solo le agregué escape > para saber cual era el error > > print tablas > > tabla = etree.XML(escape(tablas)) > > > > > > rows = iter(tabla) > > *headers* = [col.text for col in next(rows)] > > for row in rows: > > values = [col.text for col in row] > > if(values[4]==BARRIO): > > print values > > > > def *main*(): > > > > ALTURA = int(input(*"ingrese la altura de la calle: "*)) > > CALLE = raw_input(*"ingrese el nombre de la calle: "*) > > BARRIO = raw_input(*"ingrese el nombre del barrio: "*) > > > > respuesta=conectar(CALLE, ALTURA) > > imprimir(respuesta, BARRIO) > > > > #print *tablas* > > > > if __name__ == *'__main__'*: > > main() > > > Desde ya, muchas gracias. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- ________________________________________ Lo bueno de vivir un dia mas es saber que nos queda un dia menos de vida ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From ksian1685 en gmail.com Sat May 16 20:30:24 2015 From: ksian1685 en gmail.com (Alberto Perez) Date: Sat, 16 May 2015 15:30:24 -0300 Subject: [Python-es] Entity 'aacute' not defined In-Reply-To: References: Message-ID: Miguel Beltra: La verdad que nunca me puse a investigar sobre lxml. Ya me pongo a googlear sobre el tema. Quizás tenes razón. Gracias. 2015-05-16 14:11 GMT-03:00 Miguel Beltran R. : > Parece que tienes algo en tu función "escape" que modifica la pagina (en > etree.XML(escape(tablas))) > > "aacute" deberia ser "á" que se muetra como "á" > > Otra cosa es que no creo que sea conveniente usar expreciones regulares, > ¿seguro que no lo puedes hacer usando solo el selector de lxml? > > El 7 de mayo de 2015, 19:10, Alberto Perez escribió: > >> Hola, >> >> Soy nuevo en python y siempre tuve problemas con el uso de expresiones >> regulares, sin embargo me animé a escribir un pequeño script que haga un >> par de peticiones ¨POST para obtener información de una página. El problema >> es que me arrojaba el siguiente error: lxml.etree.XMLSyntaxError: >> Entity 'aacute' not defined, line 1, column 3747 >> >> Googlé y descubrí que tengo que habilitar aacute en o algo >> así, probé con la librería codecs, pero no sé muy bien cómo usarla, porque >> me tira diferentes errores. Finalmente creí dar con la solución cuando usé >> ?escape? que me arrojó: lxml.etree.XMLSyntaxError: Start tag expected, >> '<' not found, line 1, column 1 >> >> solo debería borrar el carácter ese que está de más, entonces probé >> recorrer la variable usando la siguiente expresión: >> >> variable2=(escape(variable2)).replace(*">>"*,*">"*) >> >> variable2=(escape(variable2)).replace(*"<<"*,*"<"*) >> >> Más pienso el código y más me convenzo que mi problema está en el uso de >> expresiones regulares. Si quieren echar un vistazo, les dejo el código. Si >> a alguien se les ocurre una expresion regular que ponga fin a mi problema, >> gracias, sino dejaré el código en mi escritorio para cuando gane mayor >> experiencia en python >> >> >> >> import *httplib*, urllib, urllib2, re, *xml*, *codecs*, *unicodedata* >> >> from lxml import etree >> >> from lib2to3.fixer_util import *String* >> >> from xml.sax.saxutils import escape >> >> >> >> def *conectar*(CALLE, ALTURA): >> >> >> >> tablas_abre=*""* >> >> tablas_cierra=*"
"* >> >> >> >> parametros = urllib.urlencode({*'CALLE'*: CALLE,*'ALTURA'*: ALTURA, >> *'dedonde'*: *'fonos'*}) >> >> i=1 >> >> h_cookie=urllib2.HTTPCookieProcessor() >> >> opener= urllib2.build_opener(h_cookie) >> >> #f = urllib2.*urlopen*(" >> http://www.webdedatos.com/ZIPs/cpas/zipscalles.php", *parametros*) >> >> urllib2.install_opener(opener) >> >> f=urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php >> "*, parametros); >> >> #print f.read() >> >> aux=f.read() >> >> veces=int(cantidad(aux)) >> >> >> >> t=traer_solo_tabla(aux) >> >> >> >> #*cabeceras* = {"Content-type": "application/x-*www*-form- >> *urlencoded*","Accept": "text/plain"} >> >> #abrir_conexion = httplib.HTTPConnection("www.webdedatos.com:80") >> >> #abrir_conexion.request("POST", "/ZIPs/*cpas*/zipscalles.php", >> *parametros*, *cabeceras*) >> >> #*respuesta* = abrir_conexion.getresponse() >> >> #print respuesta.status >> >> i+1; >> >> while(i<=veces): >> >> f = urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php?verPagina= >> "* >> +str(veces)) >> >> veces=veces-1 >> >> aux3=f.read() >> >> t+=traer_solo_tabla(aux3) >> >> tablas=tablas_abre+t+tablas_cierra >> >> #print f.read() >> >> #t+=f.read() >> >> >> >> return tablas >> >> >> >> def *cantidad*(sitio): >> >> vari = re.search(*"1 de.+
"*,sitio) >> >> sub_palabra = vari.group(0) >> >> sub_palabra = sub_palabra.replace(*"1 de"*,*" "*) >> >> sub_palabra = sub_palabra.replace(*"
"*,*" "*) >> >> return sub_palabra >> >> >> >> def *traer_solo_tabla*(variable): >> >> vari = re.search(*"
> >> variable2 = vari.group() >> >> >> >> variable2=variable2.replace(*"
"*,*" "*) >> >> >> >> variable2=variable2.replace(*""*,*" "*) >> >> variable2=variable2.replace(*"
"*,*" "*) >> >> >> >> >> >> variable2=variable2.replace(*"
"*,*" "*) >> >> variable2=variable2.replace(*"
"*,*" "*) >> >> variable2=(escape(variable2)).replace(*">>"*,*">"*) >> >> variable2=(escape(variable2)).replace(*"<<"*,*"<"*) >> >> >> >> regexp=re.compile(*"> href=..........................................>"*) >> >> variable2=regexp.sub(*" "*,variable2) >> >> variable2=variable2.replace(*""*,*" "*) >> >> return variable2 >> >> >> >> def *imprimir*(tablas, BARRIO): >> >> #el codigo de imprimir lo copie de un foro solo le agregué escape >> para saber cual era el error >> >> print tablas >> >> tabla = etree.XML(escape(tablas)) >> >> >> >> >> >> rows = iter(tabla) >> >> *headers* = [col.text for col in next(rows)] >> >> for row in rows: >> >> values = [col.text for col in row] >> >> if(values[4]==BARRIO): >> >> print values >> >> >> >> def *main*(): >> >> >> >> ALTURA = int(input(*"ingrese la altura de la calle: "*)) >> >> CALLE = raw_input(*"ingrese el nombre de la calle: "*) >> >> BARRIO = raw_input(*"ingrese el nombre del barrio: "*) >> >> >> >> respuesta=conectar(CALLE, ALTURA) >> >> imprimir(respuesta, BARRIO) >> >> >> >> #print *tablas* >> >> >> >> if __name__ == *'__main__'*: >> >> main() >> >> >> Desde ya, muchas gracias. >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > ________________________________________ > Lo bueno de vivir un dia mas > es saber que nos queda un dia menos de vida > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From ksian1685 en gmail.com Sun May 17 00:41:15 2015 From: ksian1685 en gmail.com (Alberto Perez) Date: Sat, 16 May 2015 19:41:15 -0300 Subject: [Python-es] Entity 'aacute' not defined In-Reply-To: References: Message-ID: Creo que BeautifulSoup hace todo por mí 2015-05-16 15:30 GMT-03:00 Alberto Perez : > Miguel Beltra: > La verdad que nunca me puse a investigar sobre lxml. Ya me pongo a > googlear sobre el tema. Quizás tenes razón. > Gracias. > > 2015-05-16 14:11 GMT-03:00 Miguel Beltran R. : > > Parece que tienes algo en tu función "escape" que modifica la pagina (en >> etree.XML(escape(tablas))) >> >> "aacute" deberia ser "á" que se muetra como "á" >> >> Otra cosa es que no creo que sea conveniente usar expreciones regulares, >> ¿seguro que no lo puedes hacer usando solo el selector de lxml? >> >> El 7 de mayo de 2015, 19:10, Alberto Perez >> escribió: >> >>> Hola, >>> >>> Soy nuevo en python y siempre tuve problemas con el uso de expresiones >>> regulares, sin embargo me animé a escribir un pequeño script que haga un >>> par de peticiones ¨POST para obtener información de una página. El problema >>> es que me arrojaba el siguiente error: lxml.etree.XMLSyntaxError: >>> Entity 'aacute' not defined, line 1, column 3747 >>> >>> Googlé y descubrí que tengo que habilitar aacute en o algo >>> así, probé con la librería codecs, pero no sé muy bien cómo usarla, porque >>> me tira diferentes errores. Finalmente creí dar con la solución cuando usé >>> ?escape? que me arrojó: lxml.etree.XMLSyntaxError: Start tag expected, >>> '<' not found, line 1, column 1 >>> >>> solo debería borrar el carácter ese que está de más, entonces probé >>> recorrer la variable usando la siguiente expresión: >>> >>> variable2=(escape(variable2)).replace(*">>"*,*">"*) >>> >>> variable2=(escape(variable2)).replace(*"<<"*,*"<"*) >>> >>> Más pienso el código y más me convenzo que mi problema está en el uso de >>> expresiones regulares. Si quieren echar un vistazo, les dejo el código. Si >>> a alguien se les ocurre una expresion regular que ponga fin a mi problema, >>> gracias, sino dejaré el código en mi escritorio para cuando gane mayor >>> experiencia en python >>> >>> >>> >>> import *httplib*, urllib, urllib2, re, *xml*, *codecs*, *unicodedata* >>> >>> from lxml import etree >>> >>> from lib2to3.fixer_util import *String* >>> >>> from xml.sax.saxutils import escape >>> >>> >>> >>> def *conectar*(CALLE, ALTURA): >>> >>> >>> >>> tablas_abre=*""* >>> >>> tablas_cierra=*"
"* >>> >>> >>> >>> parametros = urllib.urlencode({*'CALLE'*: CALLE,*'ALTURA'*: ALTURA, >>> *'dedonde'*: *'fonos'*}) >>> >>> i=1 >>> >>> h_cookie=urllib2.HTTPCookieProcessor() >>> >>> opener= urllib2.build_opener(h_cookie) >>> >>> #f = urllib2.*urlopen*(" >>> http://www.webdedatos.com/ZIPs/cpas/zipscalles.php", *parametros*) >>> >>> urllib2.install_opener(opener) >>> >>> f=urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php >>> "*, parametros); >>> >>> #print f.read() >>> >>> aux=f.read() >>> >>> veces=int(cantidad(aux)) >>> >>> >>> >>> t=traer_solo_tabla(aux) >>> >>> >>> >>> #*cabeceras* = {"Content-type": "application/x-*www*-form- >>> *urlencoded*","Accept": "text/plain"} >>> >>> #abrir_conexion = httplib.HTTPConnection("www.webdedatos.com:80") >>> >>> #abrir_conexion.request("POST", "/ZIPs/*cpas*/zipscalles.php", >>> *parametros*, *cabeceras*) >>> >>> #*respuesta* = abrir_conexion.getresponse() >>> >>> #print respuesta.status >>> >>> i+1; >>> >>> while(i<=veces): >>> >>> f = urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php?verPagina= >>> "* >>> +str(veces)) >>> >>> veces=veces-1 >>> >>> aux3=f.read() >>> >>> t+=traer_solo_tabla(aux3) >>> >>> tablas=tablas_abre+t+tablas_cierra >>> >>> #print f.read() >>> >>> #t+=f.read() >>> >>> >>> >>> return tablas >>> >>> >>> >>> def *cantidad*(sitio): >>> >>> vari = re.search(*"1 de.+
"*,sitio) >>> >>> sub_palabra = vari.group(0) >>> >>> sub_palabra = sub_palabra.replace(*"1 de"*,*" "*) >>> >>> sub_palabra = sub_palabra.replace(*"
"*,*" "*) >>> >>> return sub_palabra >>> >>> >>> >>> def *traer_solo_tabla*(variable): >>> >>> vari = re.search(*"
>> >>> variable2 = vari.group() >>> >>> >>> >>> variable2=variable2.replace(*"
"*,*" "*) >>> >>> >>> >>> variable2=variable2.replace(*""*,*" "*) >>> >>> variable2=variable2.replace(*"
"*,*" "*) >>> >>> >>> >>> >>> >>> variable2=variable2.replace(*"
"*,*" "*) >>> >>> variable2=variable2.replace(*"
"*,*" "*) >>> >>> variable2=(escape(variable2)).replace(*">>"*,*">"*) >>> >>> variable2=(escape(variable2)).replace(*"<<"*,*"<"*) >>> >>> >>> >>> regexp=re.compile(*">> href=..........................................>"*) >>> >>> variable2=regexp.sub(*" "*,variable2) >>> >>> variable2=variable2.replace(*""*,*" "*) >>> >>> return variable2 >>> >>> >>> >>> def *imprimir*(tablas, BARRIO): >>> >>> #el codigo de imprimir lo copie de un foro solo le agregué escape >>> para saber cual era el error >>> >>> print tablas >>> >>> tabla = etree.XML(escape(tablas)) >>> >>> >>> >>> >>> >>> rows = iter(tabla) >>> >>> *headers* = [col.text for col in next(rows)] >>> >>> for row in rows: >>> >>> values = [col.text for col in row] >>> >>> if(values[4]==BARRIO): >>> >>> print values >>> >>> >>> >>> def *main*(): >>> >>> >>> >>> ALTURA = int(input(*"ingrese la altura de la calle: "*)) >>> >>> CALLE = raw_input(*"ingrese el nombre de la calle: "*) >>> >>> BARRIO = raw_input(*"ingrese el nombre del barrio: "*) >>> >>> >>> >>> respuesta=conectar(CALLE, ALTURA) >>> >>> imprimir(respuesta, BARRIO) >>> >>> >>> >>> #print *tablas* >>> >>> >>> >>> if __name__ == *'__main__'*: >>> >>> main() >>> >>> >>> Desde ya, muchas gracias. >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> ________________________________________ >> Lo bueno de vivir un dia mas >> es saber que nos queda un dia menos de vida >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Sun May 17 01:02:30 2015 From: flxpaz en gmail.com (Rolando Paz) Date: Sat, 16 May 2015 17:02:30 -0600 Subject: [Python-es] script_IBOB Message-ID: Hola nuevamente ! Este script lo que debe hacer es obtener los datos desde una tarjeta llamada IBOB (que en algún momento comenté por acá), enviados por UDP, y luego graficarlos. Los datos son FFTs (Fast Fourier Transform) que procesa la IBOB. Pueden darme su opinión? #!/usr/bin/python """ Primera prueba que busca graficar los datos binarios enviados por UDP, Rolando Paz """ import numpy as np import math, struct, socket, pyfits import matplotlib.pyplot as plt HOST = 169.254.128.32 PORT = 6969 print '\nConectando la iBOB...', #estableciendo el socket UDP cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) cs.connect((HOST, PORT)) resp = controlsocket.recv(4096) print resp #desempaquetando datos binarios enviados por el enlace UDP dataUDP = struct.unpack('>L',resp) data = np.array(dataUDP,dtype=float) plt.plot(data) plt.show() ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From yourpadre en gmail.com Mon May 18 06:01:40 2015 From: yourpadre en gmail.com (Miguel Beltran R.) Date: Sun, 17 May 2015 23:01:40 -0500 Subject: [Python-es] Entity 'aacute' not defined In-Reply-To: References: Message-ID: Tambien es otra buena libreria, dependiendo que quieras y con que cuentes para hacerlo. Yo trabaje con lxml en lugar de Beatifulsoup pero no recuerdo porque. El 16 de mayo de 2015, 17:41, Alberto Perez escribió: > Creo que BeautifulSoup hace todo por mí > > 2015-05-16 15:30 GMT-03:00 Alberto Perez : > > Miguel Beltra: >> La verdad que nunca me puse a investigar sobre lxml. Ya me pongo a >> googlear sobre el tema. Quizás tenes razón. >> Gracias. >> >> 2015-05-16 14:11 GMT-03:00 Miguel Beltran R. : >> >> Parece que tienes algo en tu función "escape" que modifica la pagina (en >>> etree.XML(escape(tablas))) >>> >>> "aacute" deberia ser "á" que se muetra como "á" >>> >>> Otra cosa es que no creo que sea conveniente usar expreciones regulares, >>> ¿seguro que no lo puedes hacer usando solo el selector de lxml? >>> >>> El 7 de mayo de 2015, 19:10, Alberto Perez >>> escribió: >>> >>>> Hola, >>>> >>>> Soy nuevo en python y siempre tuve problemas con el uso de expresiones >>>> regulares, sin embargo me animé a escribir un pequeño script que haga un >>>> par de peticiones ¨POST para obtener información de una página. El problema >>>> es que me arrojaba el siguiente error: lxml.etree.XMLSyntaxError: >>>> Entity 'aacute' not defined, line 1, column 3747 >>>> >>>> Googlé y descubrí que tengo que habilitar aacute en o algo >>>> así, probé con la librería codecs, pero no sé muy bien cómo usarla, porque >>>> me tira diferentes errores. Finalmente creí dar con la solución cuando usé >>>> ?escape? que me arrojó: lxml.etree.XMLSyntaxError: Start tag expected, >>>> '<' not found, line 1, column 1 >>>> >>>> solo debería borrar el carácter ese que está de más, entonces probé >>>> recorrer la variable usando la siguiente expresión: >>>> >>>> variable2=(escape(variable2)).replace(*">>"*,*">"*) >>>> >>>> variable2=(escape(variable2)).replace(*"<<"*,*"<"*) >>>> >>>> Más pienso el código y más me convenzo que mi problema está en el uso >>>> de expresiones regulares. Si quieren echar un vistazo, les dejo el código. >>>> Si a alguien se les ocurre una expresion regular que ponga fin a mi >>>> problema, gracias, sino dejaré el código en mi escritorio para cuando gane >>>> mayor experiencia en python >>>> >>>> >>>> >>>> import *httplib*, urllib, urllib2, re, *xml*, *codecs*, *unicodedata* >>>> >>>> from lxml import etree >>>> >>>> from lib2to3.fixer_util import *String* >>>> >>>> from xml.sax.saxutils import escape >>>> >>>> >>>> >>>> def *conectar*(CALLE, ALTURA): >>>> >>>> >>>> >>>> tablas_abre=*""* >>>> >>>> tablas_cierra=*"
"* >>>> >>>> >>>> >>>> parametros = urllib.urlencode({*'CALLE'*: CALLE,*'ALTURA'*: ALTURA, >>>> *'dedonde'*: *'fonos'*}) >>>> >>>> i=1 >>>> >>>> h_cookie=urllib2.HTTPCookieProcessor() >>>> >>>> opener= urllib2.build_opener(h_cookie) >>>> >>>> #f = urllib2.*urlopen*(" >>>> http://www.webdedatos.com/ZIPs/cpas/zipscalles.php", *parametros*) >>>> >>>> urllib2.install_opener(opener) >>>> >>>> f=urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php >>>> "*, parametros); >>>> >>>> #print f.read() >>>> >>>> aux=f.read() >>>> >>>> veces=int(cantidad(aux)) >>>> >>>> >>>> >>>> t=traer_solo_tabla(aux) >>>> >>>> >>>> >>>> #*cabeceras* = {"Content-type": "application/x-*www*-form- >>>> *urlencoded*","Accept": "text/plain"} >>>> >>>> #abrir_conexion = httplib.HTTPConnection("www.webdedatos.com:80") >>>> >>>> #abrir_conexion.request("POST", "/ZIPs/*cpas*/zipscalles.php", >>>> *parametros*, *cabeceras*) >>>> >>>> #*respuesta* = abrir_conexion.getresponse() >>>> >>>> #print respuesta.status >>>> >>>> i+1; >>>> >>>> while(i<=veces): >>>> >>>> f = urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php?verPagina= >>>> "* >>>> +str(veces)) >>>> >>>> veces=veces-1 >>>> >>>> aux3=f.read() >>>> >>>> t+=traer_solo_tabla(aux3) >>>> >>>> tablas=tablas_abre+t+tablas_cierra >>>> >>>> #print f.read() >>>> >>>> #t+=f.read() >>>> >>>> >>>> >>>> return tablas >>>> >>>> >>>> >>>> def *cantidad*(sitio): >>>> >>>> vari = re.search(*"1 de.+
"*,sitio) >>>> >>>> sub_palabra = vari.group(0) >>>> >>>> sub_palabra = sub_palabra.replace(*"1 de"*,*" "*) >>>> >>>> sub_palabra = sub_palabra.replace(*"
"*,*" "*) >>>> >>>> return sub_palabra >>>> >>>> >>>> >>>> def *traer_solo_tabla*(variable): >>>> >>>> vari = re.search(*"
>>> >>>> variable2 = vari.group() >>>> >>>> >>>> >>>> variable2=variable2.replace(*"
"*,*" "*) >>>> >>>> >>>> >>>> variable2=variable2.replace(*""*,*" "*) >>>> >>>> variable2=variable2.replace(*"
"*,*" "*) >>>> >>>> >>>> >>>> >>>> >>>> variable2=variable2.replace(*"
"*,*" "*) >>>> >>>> variable2=variable2.replace(*"
"*,*" "*) >>>> >>>> variable2=(escape(variable2)).replace(*">>"*,*">"*) >>>> >>>> variable2=(escape(variable2)).replace(*"<<"*,*"<"*) >>>> >>>> >>>> >>>> regexp=re.compile(*">>> href=..........................................>"*) >>>> >>>> variable2=regexp.sub(*" "*,variable2) >>>> >>>> variable2=variable2.replace(*""*,*" "*) >>>> >>>> return variable2 >>>> >>>> >>>> >>>> def *imprimir*(tablas, BARRIO): >>>> >>>> #el codigo de imprimir lo copie de un foro solo le agregué escape >>>> para saber cual era el error >>>> >>>> print tablas >>>> >>>> tabla = etree.XML(escape(tablas)) >>>> >>>> >>>> >>>> >>>> >>>> rows = iter(tabla) >>>> >>>> *headers* = [col.text for col in next(rows)] >>>> >>>> for row in rows: >>>> >>>> values = [col.text for col in row] >>>> >>>> if(values[4]==BARRIO): >>>> >>>> print values >>>> >>>> >>>> >>>> def *main*(): >>>> >>>> >>>> >>>> ALTURA = int(input(*"ingrese la altura de la calle: "*)) >>>> >>>> CALLE = raw_input(*"ingrese el nombre de la calle: "*) >>>> >>>> BARRIO = raw_input(*"ingrese el nombre del barrio: "*) >>>> >>>> >>>> >>>> respuesta=conectar(CALLE, ALTURA) >>>> >>>> imprimir(respuesta, BARRIO) >>>> >>>> >>>> >>>> #print *tablas* >>>> >>>> >>>> >>>> if __name__ == *'__main__'*: >>>> >>>> main() >>>> >>>> >>>> Desde ya, muchas gracias. >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> >>> -- >>> ________________________________________ >>> Lo bueno de vivir un dia mas >>> es saber que nos queda un dia menos de vida >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- ________________________________________ Lo bueno de vivir un dia mas es saber que nos queda un dia menos de vida ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Mon May 18 10:50:30 2015 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 18 May 2015 10:50:30 +0200 Subject: [Python-es] Entity 'aacute' not defined In-Reply-To: References: Message-ID: El 18 de mayo de 2015, 6:01, Miguel Beltran R. escribió: > Tambien es otra buena libreria, dependiendo que quieras y con que cuentes > para hacerlo. > > Yo trabaje con lxml en lugar de Beatifulsoup pero no recuerdo porque. > Ambas dos pueden usar el "parser" de la otra. En general, BeutifulSoup es más sencilla de instalar y suele ser suficiente para cualqueir cometido. Se recomienda usarlo siempre con una versión actualizada de python, ya que el parser HTML estándar era algo defectuoso en versiones antiguas. El lxml es más rápido y es más tolerante a código HTML mal construido. En cambio, sus dependencias con librerías C podrían hacerlo menos "transportable", y puede tener problemas con ciertas codificaciones de caracteres. El problema de las "entidades" creo que alguna vez me lo he encontrado, pero no recuerdo cómo lo resolví. Mi recomendación es que, en lugar de googlear, busques directamente en el código de algunos proyectos. Por ejemplo, calibre usa beautifulsoup y lxml: https://github.com/kovidgoyal/calibre , donde puedes ver que utiliza una relación explícita de entidades que no tener problemas. > > El 16 de mayo de 2015, 17:41, Alberto Perez > escribió: > >> Creo que BeautifulSoup hace todo por mí >> >> 2015-05-16 15:30 GMT-03:00 Alberto Perez : >> >> Miguel Beltra: >>> La verdad que nunca me puse a investigar sobre lxml. Ya me pongo a >>> googlear sobre el tema. Quizás tenes razón. >>> Gracias. >>> >>> 2015-05-16 14:11 GMT-03:00 Miguel Beltran R. : >>> >>> Parece que tienes algo en tu función "escape" que modifica la pagina (en >>>> etree.XML(escape(tablas))) >>>> >>>> "aacute" deberia ser "á" que se muetra como "á" >>>> >>>> Otra cosa es que no creo que sea conveniente usar expreciones >>>> regulares, ¿seguro que no lo puedes hacer usando solo el selector de lxml? >>>> >>>> El 7 de mayo de 2015, 19:10, Alberto Perez >>>> escribió: >>>> >>>>> Hola, >>>>> >>>>> Soy nuevo en python y siempre tuve problemas con el uso de expresiones >>>>> regulares, sin embargo me animé a escribir un pequeño script que haga un >>>>> par de peticiones ¨POST para obtener información de una página. El problema >>>>> es que me arrojaba el siguiente error: lxml.etree.XMLSyntaxError: >>>>> Entity 'aacute' not defined, line 1, column 3747 >>>>> >>>>> Googlé y descubrí que tengo que habilitar aacute en o algo >>>>> así, probé con la librería codecs, pero no sé muy bien cómo usarla, porque >>>>> me tira diferentes errores. Finalmente creí dar con la solución cuando usé >>>>> ?escape? que me arrojó: lxml.etree.XMLSyntaxError: Start tag >>>>> expected, '<' not found, line 1, column 1 >>>>> >>>>> solo debería borrar el carácter ese que está de más, entonces probé >>>>> recorrer la variable usando la siguiente expresión: >>>>> >>>>> variable2=(escape(variable2)).replace(*">>"*,*">"*) >>>>> >>>>> variable2=(escape(variable2)).replace(*"<<"*,*"<"*) >>>>> >>>>> Más pienso el código y más me convenzo que mi problema está en el uso >>>>> de expresiones regulares. Si quieren echar un vistazo, les dejo el código. >>>>> Si a alguien se les ocurre una expresion regular que ponga fin a mi >>>>> problema, gracias, sino dejaré el código en mi escritorio para cuando gane >>>>> mayor experiencia en python >>>>> >>>>> >>>>> >>>>> import *httplib*, urllib, urllib2, re, *xml*, *codecs*, *unicodedata* >>>>> >>>>> from lxml import etree >>>>> >>>>> from lib2to3.fixer_util import *String* >>>>> >>>>> from xml.sax.saxutils import escape >>>>> >>>>> >>>>> >>>>> def *conectar*(CALLE, ALTURA): >>>>> >>>>> >>>>> >>>>> tablas_abre=*""* >>>>> >>>>> tablas_cierra=*"
"* >>>>> >>>>> >>>>> >>>>> parametros = urllib.urlencode({*'CALLE'*: CALLE,*'ALTURA'*: >>>>> ALTURA,*'dedonde'*: *'fonos'*}) >>>>> >>>>> i=1 >>>>> >>>>> h_cookie=urllib2.HTTPCookieProcessor() >>>>> >>>>> opener= urllib2.build_opener(h_cookie) >>>>> >>>>> #f = urllib2.*urlopen*(" >>>>> http://www.webdedatos.com/ZIPs/cpas/zipscalles.php", *parametros*) >>>>> >>>>> urllib2.install_opener(opener) >>>>> >>>>> f=urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php >>>>> "*, parametros); >>>>> >>>>> #print f.read() >>>>> >>>>> aux=f.read() >>>>> >>>>> veces=int(cantidad(aux)) >>>>> >>>>> >>>>> >>>>> t=traer_solo_tabla(aux) >>>>> >>>>> >>>>> >>>>> #*cabeceras* = {"Content-type": "application/x-*www*-form- >>>>> *urlencoded*","Accept": "text/plain"} >>>>> >>>>> #abrir_conexion = httplib.HTTPConnection("www.webdedatos.com:80") >>>>> >>>>> #abrir_conexion.request("POST", "/ZIPs/*cpas*/zipscalles.php", >>>>> *parametros*, *cabeceras*) >>>>> >>>>> #*respuesta* = abrir_conexion.getresponse() >>>>> >>>>> #print respuesta.status >>>>> >>>>> i+1; >>>>> >>>>> while(i<=veces): >>>>> >>>>> f = urllib2.urlopen(*"http://www.webdedatos.com/ZIPs/cpas/zipscalles.php?verPagina= >>>>> "* >>>>> +str(veces)) >>>>> >>>>> veces=veces-1 >>>>> >>>>> aux3=f.read() >>>>> >>>>> t+=traer_solo_tabla(aux3) >>>>> >>>>> tablas=tablas_abre+t+tablas_cierra >>>>> >>>>> #print f.read() >>>>> >>>>> #t+=f.read() >>>>> >>>>> >>>>> >>>>> return tablas >>>>> >>>>> >>>>> >>>>> def *cantidad*(sitio): >>>>> >>>>> vari = re.search(*"1 de.+
"*,sitio) >>>>> >>>>> sub_palabra = vari.group(0) >>>>> >>>>> sub_palabra = sub_palabra.replace(*"1 de"*,*" "*) >>>>> >>>>> sub_palabra = sub_palabra.replace(*"
"*,*" "*) >>>>> >>>>> return sub_palabra >>>>> >>>>> >>>>> >>>>> def *traer_solo_tabla*(variable): >>>>> >>>>> vari = re.search(*"
>>>> >>>>> variable2 = vari.group() >>>>> >>>>> >>>>> >>>>> variable2=variable2.replace(*"
"*,*" "*) >>>>> >>>>> >>>>> >>>>> variable2=variable2.replace(*""*,*" "*) >>>>> >>>>> variable2=variable2.replace(*"
"*,*" "*) >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> variable2=variable2.replace(*"
"*,*" "*) >>>>> >>>>> variable2=variable2.replace(*"
"*,*" "*) >>>>> >>>>> variable2=(escape(variable2)).replace(*">>"*,*">"*) >>>>> >>>>> variable2=(escape(variable2)).replace(*"<<"*,*"<"*) >>>>> >>>>> >>>>> >>>>> regexp=re.compile(*">>>> href=..........................................>"*) >>>>> >>>>> variable2=regexp.sub(*" "*,variable2) >>>>> >>>>> variable2=variable2.replace(*""*,*" "*) >>>>> >>>>> return variable2 >>>>> >>>>> >>>>> >>>>> def *imprimir*(tablas, BARRIO): >>>>> >>>>> #el codigo de imprimir lo copie de un foro solo le agregué escape >>>>> para saber cual era el error >>>>> >>>>> print tablas >>>>> >>>>> tabla = etree.XML(escape(tablas)) >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> rows = iter(tabla) >>>>> >>>>> *headers* = [col.text for col in next(rows)] >>>>> >>>>> for row in rows: >>>>> >>>>> values = [col.text for col in row] >>>>> >>>>> if(values[4]==BARRIO): >>>>> >>>>> print values >>>>> >>>>> >>>>> >>>>> def *main*(): >>>>> >>>>> >>>>> >>>>> ALTURA = int(input(*"ingrese la altura de la calle: "*)) >>>>> >>>>> CALLE = raw_input(*"ingrese el nombre de la calle: "*) >>>>> >>>>> BARRIO = raw_input(*"ingrese el nombre del barrio: "*) >>>>> >>>>> >>>>> >>>>> respuesta=conectar(CALLE, ALTURA) >>>>> >>>>> imprimir(respuesta, BARRIO) >>>>> >>>>> >>>>> >>>>> #print *tablas* >>>>> >>>>> >>>>> >>>>> if __name__ == *'__main__'*: >>>>> >>>>> main() >>>>> >>>>> >>>>> Desde ya, muchas gracias. >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> >>>> -- >>>> ________________________________________ >>>> Lo bueno de vivir un dia mas >>>> es saber que nos queda un dia menos de vida >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > ________________________________________ > Lo bueno de vivir un dia mas > es saber que nos queda un dia menos de vida > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Mon May 18 11:33:06 2015 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 18 May 2015 11:33:06 +0200 Subject: [Python-es] script_IBOB In-Reply-To: References: Message-ID: El 17 de mayo de 2015, 1:02, Rolando Paz escribió: > Hola nuevamente ! > > Este script lo que debe hacer es obtener los datos desde una tarjeta > llamada IBOB (que en algún momento comenté por acá), enviados por UDP, y > luego graficarlos. > > Los datos son FFTs (Fast Fourier Transform) que procesa la IBOB. > > Pueden darme su opinión? > Parece un código bastante directo. Si funciona, no hay más que decir. Tal como está, a la dirección de HOST le faltan las comillas y la variable cs de pronto se expande como controlsocket. Por lo demás, ¿es necesario desempaquetar los datos recibidos como "unsigned long" (>L)? Si los datos se envían como floats, igual sería mejor desempaquetarlos directamente como float (>f). Ten en cuenta que np.array no te hace una conversión binaria de un "long" en "float". Por otro lado, del socket puedes recibir cualquier cantidad de datos, pero en cambio sólo estás desempaquetando un único dato, algo ilógico porque debes esperar más si quieres hacer una gráfica con ello, y además da error. Supongo que lo que buscas es desempaquetar una secuencia de datos: pkglen = struct.calcsize(fmt) dataUDP = (struct.unpack('>f', s[i:i+pkglen]) for i in range(0,len(resp),pkglen)) > > #!/usr/bin/python > """ > Primera prueba que busca graficar los datos binarios enviados por UDP, > Rolando Paz > """ > import numpy as np > import math, struct, socket, pyfits > import matplotlib.pyplot as plt > > HOST = 169.254.128.32 > PORT = 6969 > print '\nConectando la iBOB...', > > #estableciendo el socket UDP > cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) > cs.connect((HOST, PORT)) > > resp = controlsocket.recv(4096) > print resp > > #desempaquetando datos binarios enviados por el enlace UDP > dataUDP = struct.unpack('>L',resp) > data = np.array(dataUDP,dtype=float) > plt.plot(data) > plt.show() > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Mon May 18 16:29:14 2015 From: flxpaz en gmail.com (Rolando Paz) Date: Mon, 18 May 2015 08:29:14 -0600 Subject: [Python-es] script_IBOB In-Reply-To: References: Message-ID: Hola Chema Los datos que yo recibo de la IBOB son datos signed de 32 bit, creo que lo correcto seria " escribió: > > > El 17 de mayo de 2015, 1:02, Rolando Paz escribió: > >> Hola nuevamente ! >> >> Este script lo que debe hacer es obtener los datos desde una tarjeta >> llamada IBOB (que en algún momento comenté por acá), enviados por UDP, y >> luego graficarlos. >> >> Los datos son FFTs (Fast Fourier Transform) que procesa la IBOB. >> >> Pueden darme su opinión? >> > > Parece un código bastante directo. Si funciona, no hay más que decir. > > Tal como está, a la dirección de HOST le faltan las comillas y la variable > cs de pronto se expande como controlsocket. Por lo demás, ¿es necesario > desempaquetar los datos recibidos como "unsigned long" (>L)? Si los datos > se envían como floats, igual sería mejor desempaquetarlos directamente como > float (>f). Ten en cuenta que np.array no te hace una conversión binaria de > un "long" en "float". > > Por otro lado, del socket puedes recibir cualquier cantidad de datos, pero > en cambio sólo estás desempaquetando un único dato, algo ilógico porque > debes esperar más si quieres hacer una gráfica con ello, y además da error. > Supongo que lo que buscas es desempaquetar una secuencia de datos: > > pkglen = struct.calcsize(fmt) > dataUDP = (struct.unpack('>f', s[i:i+pkglen]) for i in > range(0,len(resp),pkglen)) > > > >> >> #!/usr/bin/python >> """ >> Primera prueba que busca graficar los datos binarios enviados por UDP, >> Rolando Paz >> """ >> import numpy as np >> import math, struct, socket, pyfits >> import matplotlib.pyplot as plt >> >> HOST = 169.254.128.32 >> PORT = 6969 >> print '\nConectando la iBOB...', >> >> #estableciendo el socket UDP >> cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) >> cs.connect((HOST, PORT)) >> >> resp = controlsocket.recv(4096) >> print resp >> >> #desempaquetando datos binarios enviados por el enlace UDP >> dataUDP = struct.unpack('>L',resp) >> data = np.array(dataUDP,dtype=float) >> plt.plot(data) >> plt.show() >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Tue May 19 02:02:58 2015 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 19 May 2015 02:02:58 +0200 Subject: [Python-es] script_IBOB In-Reply-To: References: Message-ID: El 18 de mayo de 2015, 16:29, Rolando Paz escribió: > Hola Chema > > Los datos que yo recibo de la IBOB son datos signed de 32 bit, creo que lo > correcto seria " > De acuerdo a tus observaciones, entonces el código debería ser así: > > #!/usr/bin/python > """ > Primera prueba que busca graficar los datos binarios enviados por UDP > desde la IBOB. > Rolando Paz > """ > import numpy as np > import math, struct, socket > import matplotlib.pyplot as plt > > HOST = '169.254.128.32' > PORT = 6969 > > #estableciendo el socket UDP > cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) > cs.connect((HOST, PORT)) > > #desempaquetando datos binarios enviados por el enlace UDP > pkglen = struct.calcsize(' dataUDP = (struct.unpack(' range(0,len(resp),pkglen)) > Si recibes "unsigned 32bits", no lo desempaquetes entonces como floats. > > data = np.array(dataUDP,dtype=float) > Lo mismo, si son enteros, ¿necesitas que sean floats para algo? > plt.plot(data) > plt.show() > > Es correcto el código? > Lo más divertido del python es probar a ver si funciona. > > Saludos > > Rolando Paz > > > El 18 de mayo de 2015, 3:33, Chema Cortes escribió: > >> >> >> El 17 de mayo de 2015, 1:02, Rolando Paz escribió: >> >>> Hola nuevamente ! >>> >>> Este script lo que debe hacer es obtener los datos desde una tarjeta >>> llamada IBOB (que en algún momento comenté por acá), enviados por UDP, y >>> luego graficarlos. >>> >>> Los datos son FFTs (Fast Fourier Transform) que procesa la IBOB. >>> >>> Pueden darme su opinión? >>> >> >> Parece un código bastante directo. Si funciona, no hay más que decir. >> >> Tal como está, a la dirección de HOST le faltan las comillas y la >> variable cs de pronto se expande como controlsocket. Por lo demás, ¿es >> necesario desempaquetar los datos recibidos como "unsigned long" (>L)? Si >> los datos se envían como floats, igual sería mejor desempaquetarlos >> directamente como float (>f). Ten en cuenta que np.array no te hace una >> conversión binaria de un "long" en "float". >> >> Por otro lado, del socket puedes recibir cualquier cantidad de datos, >> pero en cambio sólo estás desempaquetando un único dato, algo ilógico >> porque debes esperar más si quieres hacer una gráfica con ello, y además da >> error. Supongo que lo que buscas es desempaquetar una secuencia de datos: >> >> pkglen = struct.calcsize(fmt) >> dataUDP = (struct.unpack('>f', s[i:i+pkglen]) for i in >> range(0,len(resp),pkglen)) >> >> >> >>> >>> #!/usr/bin/python >>> """ >>> Primera prueba que busca graficar los datos binarios enviados por UDP, >>> Rolando Paz >>> """ >>> import numpy as np >>> import math, struct, socket, pyfits >>> import matplotlib.pyplot as plt >>> >>> HOST = 169.254.128.32 >>> PORT = 6969 >>> print '\nConectando la iBOB...', >>> >>> #estableciendo el socket UDP >>> cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) >>> cs.connect((HOST, PORT)) >>> >>> resp = controlsocket.recv(4096) >>> print resp >>> >>> #desempaquetando datos binarios enviados por el enlace UDP >>> dataUDP = struct.unpack('>L',resp) >>> data = np.array(dataUDP,dtype=float) >>> plt.plot(data) >>> plt.show() >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >> http://ch3m4.org/blog >> Buscador Python Hispano: http://ch3m4.org/python-es >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Tue May 19 17:19:21 2015 From: flxpaz en gmail.com (Rolando Paz) Date: Tue, 19 May 2015 09:19:21 -0600 Subject: [Python-es] script_IBOB In-Reply-To: References: Message-ID: Hola buenos dias. Lo que he logrado entender, considerando que lo que quiero es graficar los datos que salen de la IBOB, es lo siguiente: a. Los datos que procesa la IBOB se graban en una memoria compartida de mi diseño, y son datos de 32 bit signed. b. Estos datos son los que viajan por medio de UDP. El archivo adjunto main.c es el que yo utilizo para automatizar la transmisión de los paquetes UDP que salen de la IBOB. Y el comando dump_data es el que yo debo usar para obtener los datos. static void dump_data_cmd(int argc, char **argv) { for(x=0; x<2048; x++){ value = sif_bram_read(XPAR_POCO_TEST_V7_XENGINE_AA_REAL_BASEADDR, x); xil_printf("%08d %08d\n\r", x, value); } } c. Luego que yo inicializo la transmisión de los paquetes UDP, entiendo que yo debo abrir un socket UDP de esta forma para obtener los datos del puerto ethernet de la IBOB. import numpy as np import math, struct, socket import matplotlib.pyplot as plt HOST = '169.254.128.32' PORT = 6969 #estableciendo el socket UDP cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) cs.connect((HOST, PORT)) d. Luego de tener abierto el socket, yo debo obtener los datos y desempaquetarlos de esta forma: #desempaquetando datos binarios enviados por el enlace UDP resp = cs.recv(4096) pkglen = struct.calcsize(' escribió: > > > El 18 de mayo de 2015, 16:29, Rolando Paz escribió: > >> Hola Chema >> >> Los datos que yo recibo de la IBOB son datos signed de 32 bit, creo que >> lo correcto seria "> >> De acuerdo a tus observaciones, entonces el código debería ser así: >> >> #!/usr/bin/python >> """ >> Primera prueba que busca graficar los datos binarios enviados por UDP >> desde la IBOB. >> Rolando Paz >> """ >> import numpy as np >> import math, struct, socket >> import matplotlib.pyplot as plt >> >> HOST = '169.254.128.32' >> PORT = 6969 >> >> #estableciendo el socket UDP >> cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) >> cs.connect((HOST, PORT)) >> >> #desempaquetando datos binarios enviados por el enlace UDP >> pkglen = struct.calcsize('> dataUDP = (struct.unpack('> range(0,len(resp),pkglen)) >> > > Si recibes "unsigned 32bits", no lo desempaquetes entonces como floats. > > >> >> data = np.array(dataUDP,dtype=float) >> > > Lo mismo, si son enteros, ¿necesitas que sean floats para algo? > > >> plt.plot(data) >> plt.show() >> >> Es correcto el código? >> > > Lo más divertido del python es probar a ver si funciona. > > >> >> Saludos >> >> Rolando Paz >> >> >> El 18 de mayo de 2015, 3:33, Chema Cortes escribió: >> >>> >>> >>> El 17 de mayo de 2015, 1:02, Rolando Paz escribió: >>> >>>> Hola nuevamente ! >>>> >>>> Este script lo que debe hacer es obtener los datos desde una tarjeta >>>> llamada IBOB (que en algún momento comenté por acá), enviados por UDP, y >>>> luego graficarlos. >>>> >>>> Los datos son FFTs (Fast Fourier Transform) que procesa la IBOB. >>>> >>>> Pueden darme su opinión? >>>> >>> >>> Parece un código bastante directo. Si funciona, no hay más que decir. >>> >>> Tal como está, a la dirección de HOST le faltan las comillas y la >>> variable cs de pronto se expande como controlsocket. Por lo demás, ¿es >>> necesario desempaquetar los datos recibidos como "unsigned long" (>L)? Si >>> los datos se envían como floats, igual sería mejor desempaquetarlos >>> directamente como float (>f). Ten en cuenta que np.array no te hace una >>> conversión binaria de un "long" en "float". >>> >>> Por otro lado, del socket puedes recibir cualquier cantidad de datos, >>> pero en cambio sólo estás desempaquetando un único dato, algo ilógico >>> porque debes esperar más si quieres hacer una gráfica con ello, y además da >>> error. Supongo que lo que buscas es desempaquetar una secuencia de datos: >>> >>> pkglen = struct.calcsize(fmt) >>> dataUDP = (struct.unpack('>f', s[i:i+pkglen]) for i in >>> range(0,len(resp),pkglen)) >>> >>> >>> >>>> >>>> #!/usr/bin/python >>>> """ >>>> Primera prueba que busca graficar los datos binarios enviados por UDP, >>>> Rolando Paz >>>> """ >>>> import numpy as np >>>> import math, struct, socket, pyfits >>>> import matplotlib.pyplot as plt >>>> >>>> HOST = 169.254.128.32 >>>> PORT = 6969 >>>> print '\nConectando la iBOB...', >>>> >>>> #estableciendo el socket UDP >>>> cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) >>>> cs.connect((HOST, PORT)) >>>> >>>> resp = controlsocket.recv(4096) >>>> print resp >>>> >>>> #desempaquetando datos binarios enviados por el enlace UDP >>>> dataUDP = struct.unpack('>L',resp) >>>> data = np.array(dataUDP,dtype=float) >>>> plt.plot(data) >>>> plt.show() >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> >>> -- >>> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >>> http://ch3m4.org/blog >>> Buscador Python Hispano: http://ch3m4.org/python-es >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: main.c Type: text/x-csrc Size: 29738 bytes Desc: no disponible URL: From plobarinas en jcea.es Wed May 20 20:31:33 2015 From: plobarinas en jcea.es (=?UTF-8?B?UGFibG8gTG9iYXJpw7Fhcw==?=) Date: Wed, 20 May 2015 20:31:33 +0200 Subject: [Python-es] Convocatoria Python-Madrid mayo 2015 Message-ID: <555CD305.3080207@jcea.es> Hola a todos: Como es habitual este mes tenemos reunión de Python-Madrid, para todos aquellos que puedan/quieran acercarse. Serán el 27 de mayo a partir de las 20:00 horas en Kunlabori. Aquí tenéis los detalles: http://www.python-madrid.es/meetings/reunion-mayo-2015-python-madrid/ Un saludo. From pych3m4 en gmail.com Wed May 20 20:57:45 2015 From: pych3m4 en gmail.com (Chema Cortes) Date: Wed, 20 May 2015 20:57:45 +0200 Subject: [Python-es] script_IBOB In-Reply-To: References: Message-ID: El 19 de mayo de 2015, 17:19, Rolando Paz escribió: > Hola buenos dias. > > Lo que he logrado entender, considerando que lo que quiero es graficar los > datos que salen de la IBOB, es lo siguiente: > > > a. Los datos que procesa la IBOB se graban en una memoria compartida de mi > diseño, y son datos de 32 bit signed. > > b. Estos datos son los que viajan por medio de UDP. > El archivo adjunto main.c es el que yo utilizo para automatizar la > transmisión de los paquetes UDP que salen de la IBOB. > Y el comando dump_data es el que yo debo usar para obtener los datos. > > static void dump_data_cmd(int argc, char **argv) > { > for(x=0; x<2048; x++){ > value = sif_bram_read(XPAR_POCO_TEST_V7_XENGINE_AA_REAL_BASEADDR, x); > xil_printf("%08d %08d\n\r", x, value); > } > } > > c. Luego que yo inicializo la transmisión de los paquetes UDP, entiendo que yo debo abrir un socket UDP de esta forma para obtener los datos del puerto ethernet de la IBOB. > > import numpy as np > import math, struct, socket > import matplotlib.pyplot as plt > > HOST = '169.254.128.32' > PORT = 6969 > > #estableciendo el socket UDP > cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) > cs.connect((HOST, PORT)) > > d. Luego de tener abierto el socket, yo debo obtener los datos y desempaquetarlos de esta forma: > > #desempaquetando datos binarios enviados por el enlace UDP > resp = cs.recv(4096) > pkglen = struct.calcsize(' dataUDP = (struct.unpack(' > e. Entiendo que acá yo tendría los datos binarios y que debo convertir en enteros o reales para poder ser graficados con matplotlib. > > data = np.array(dataUDP,dtype=float) . > plt.plot(data) > plt.show() > > Este análisis de la solución está bien orientada? > > Es correcto. Lo único date cuenta que 'dataUDP' era una lista de enteros y que 'data' lo creas como array de 'floats'. Parece innecesaria esta conversión. Aunque lo mejor es ahorrarte algunos pasos y usar directamente np.fromstring: resp = cs.recv(4096) data = np.fromstring(resp, dtype=np.uint32) > > Saludos > > Rolando Paz > > > El 18 de mayo de 2015, 18:02, Chema Cortes escribió: > >> >> >> El 18 de mayo de 2015, 16:29, Rolando Paz escribió: >> >>> Hola Chema >>> >>> Los datos que yo recibo de la IBOB son datos signed de 32 bit, creo que >>> lo correcto seria ">> >>> De acuerdo a tus observaciones, entonces el código debería ser así: >>> >>> #!/usr/bin/python >>> """ >>> Primera prueba que busca graficar los datos binarios enviados por UDP >>> desde la IBOB. >>> Rolando Paz >>> """ >>> import numpy as np >>> import math, struct, socket >>> import matplotlib.pyplot as plt >>> >>> HOST = '169.254.128.32' >>> PORT = 6969 >>> >>> #estableciendo el socket UDP >>> cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) >>> cs.connect((HOST, PORT)) >>> >>> #desempaquetando datos binarios enviados por el enlace UDP >>> pkglen = struct.calcsize('>> dataUDP = (struct.unpack('>> range(0,len(resp),pkglen)) >>> >> >> Si recibes "unsigned 32bits", no lo desempaquetes entonces como floats. >> >> >>> >>> data = np.array(dataUDP,dtype=float) >>> >> >> Lo mismo, si son enteros, ¿necesitas que sean floats para algo? >> >> >>> plt.plot(data) >>> plt.show() >>> >>> Es correcto el código? >>> >> >> Lo más divertido del python es probar a ver si funciona. >> >> >>> >>> Saludos >>> >>> Rolando Paz >>> >>> >>> El 18 de mayo de 2015, 3:33, Chema Cortes escribió: >>> >>>> >>>> >>>> El 17 de mayo de 2015, 1:02, Rolando Paz escribió: >>>> >>>>> Hola nuevamente ! >>>>> >>>>> Este script lo que debe hacer es obtener los datos desde una tarjeta >>>>> llamada IBOB (que en algún momento comenté por acá), enviados por UDP, y >>>>> luego graficarlos. >>>>> >>>>> Los datos son FFTs (Fast Fourier Transform) que procesa la IBOB. >>>>> >>>>> Pueden darme su opinión? >>>>> >>>> >>>> Parece un código bastante directo. Si funciona, no hay más que decir. >>>> >>>> Tal como está, a la dirección de HOST le faltan las comillas y la >>>> variable cs de pronto se expande como controlsocket. Por lo demás, ¿es >>>> necesario desempaquetar los datos recibidos como "unsigned long" (>L)? Si >>>> los datos se envían como floats, igual sería mejor desempaquetarlos >>>> directamente como float (>f). Ten en cuenta que np.array no te hace una >>>> conversión binaria de un "long" en "float". >>>> >>>> Por otro lado, del socket puedes recibir cualquier cantidad de datos, >>>> pero en cambio sólo estás desempaquetando un único dato, algo ilógico >>>> porque debes esperar más si quieres hacer una gráfica con ello, y además da >>>> error. Supongo que lo que buscas es desempaquetar una secuencia de datos: >>>> >>>> pkglen = struct.calcsize(fmt) >>>> dataUDP = (struct.unpack('>f', s[i:i+pkglen]) for i in >>>> range(0,len(resp),pkglen)) >>>> >>>> >>>> >>>>> >>>>> #!/usr/bin/python >>>>> """ >>>>> Primera prueba que busca graficar los datos binarios enviados por UDP, >>>>> Rolando Paz >>>>> """ >>>>> import numpy as np >>>>> import math, struct, socket, pyfits >>>>> import matplotlib.pyplot as plt >>>>> >>>>> HOST = 169.254.128.32 >>>>> PORT = 6969 >>>>> print '\nConectando la iBOB...', >>>>> >>>>> #estableciendo el socket UDP >>>>> cs = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) >>>>> cs.connect((HOST, PORT)) >>>>> >>>>> resp = controlsocket.recv(4096) >>>>> print resp >>>>> >>>>> #desempaquetando datos binarios enviados por el enlace UDP >>>>> dataUDP = struct.unpack('>L',resp) >>>>> data = np.array(dataUDP,dtype=float) >>>>> plt.plot(data) >>>>> plt.show() >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> >>>> -- >>>> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >>>> http://ch3m4.org/blog >>>> Buscador Python Hispano: http://ch3m4.org/python-es >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >> http://ch3m4.org/blog >> Buscador Python Hispano: http://ch3m4.org/python-es >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From rapto en arrakis.es Fri May 22 10:06:27 2015 From: rapto en arrakis.es (=?UTF-8?B?TWFyY29zIFPDoW5jaGV6IFByb3ZlbmNpbw==?=) Date: Fri, 22 May 2015 10:06:27 +0200 Subject: [Python-es] [OT] Oferta de trabajo Message-ID: <555EE383.6050008@arrakis.es> Hola, por si le interesa a alguien: La empresa: Meteogrid, sede en Gran Vía, Madrid. Puesto: Mantenimiento/desarrollo informático Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS Buen nivel de inglés La empresa es pequeña, así que toca hacer un poco de todo, como los que estamos. El sueldo orientativo sería 1000 EUR para una jornada de 7h. Gracias por vuestra atención From itzcoaltam en joiz.net Fri May 22 12:10:58 2015 From: itzcoaltam en joiz.net (itzcoalt alvarez moreno) Date: Fri, 22 May 2015 05:10:58 -0500 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: <555EE383.6050008@arrakis.es> References: <555EE383.6050008@arrakis.es> Message-ID: Sólo por morbo, el sueldo es mensual. ? La formada de trabajo es de lunes a viernes ? Enviado desde mi iPhone > El 22/05/2015, a las 03:06, Marcos Sánchez Provencio escribió: > > Hola, por si le interesa a alguien: > > La empresa: Meteogrid, sede en Gran Vía, Madrid. > Puesto: Mantenimiento/desarrollo informático > Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS > Buen nivel de inglés > > La empresa es pequeña, así que toca hacer un poco de todo, como los que > estamos. > > El sueldo orientativo sería 1000 EUR para una jornada de 7h. > > > Gracias por vuestra atención > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ From rapto en arrakis.es Fri May 22 12:16:08 2015 From: rapto en arrakis.es (=?windows-1252?Q?Marcos_S=E1nchez_Provencio?=) Date: Fri, 22 May 2015 12:16:08 +0200 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: References: <555EE383.6050008@arrakis.es> Message-ID: <555F01E8.3030801@arrakis.es> 7h diarias, de L a V, sueldo mensual y horario orientativo. El 22/05/15 a las 12:10, itzcoalt alvarez moreno escribió: > Sólo por morbo, el sueldo es mensual. ? > La formada de trabajo es de lunes a viernes ? > > Enviado desde mi iPhone > >> El 22/05/2015, a las 03:06, Marcos Sánchez Provencio escribió: >> >> Hola, por si le interesa a alguien: >> >> La empresa: Meteogrid, sede en Gran Vía, Madrid. >> Puesto: Mantenimiento/desarrollo informático >> Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS >> Buen nivel de inglés >> >> La empresa es pequeña, así que toca hacer un poco de todo, como los que >> estamos. >> >> El sueldo orientativo sería 1000 EUR para una jornada de 7h. >> >> >> Gracias por vuestra atención >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ From zaravalle en gmail.com Fri May 22 12:21:41 2015 From: zaravalle en gmail.com (Zara) Date: Fri, 22 May 2015 12:21:41 +0200 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: <555F01E8.3030801@arrakis.es> References: <555EE383.6050008@arrakis.es> <555F01E8.3030801@arrakis.es> Message-ID: Siento tener que decirlo así de duro, pero ese sueldo es una miseria. Así pasa que todo el mundo está huyendo de España El 22 de mayo de 2015, 12:16, Marcos Sánchez Provencio escribió: > 7h diarias, de L a V, sueldo mensual y horario orientativo. > > El 22/05/15 a las 12:10, itzcoalt alvarez moreno escribió: > > Sólo por morbo, el sueldo es mensual. ? > > La formada de trabajo es de lunes a viernes ? > > > > Enviado desde mi iPhone > > > >> El 22/05/2015, a las 03:06, Marcos Sánchez Provencio > escribió: > >> > >> Hola, por si le interesa a alguien: > >> > >> La empresa: Meteogrid, sede en Gran Vía, Madrid. > >> Puesto: Mantenimiento/desarrollo informático > >> Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS > >> Buen nivel de inglés > >> > >> La empresa es pequeña, así que toca hacer un poco de todo, como los que > >> estamos. > >> > >> El sueldo orientativo sería 1000 EUR para una jornada de 7h. > >> > >> > >> Gracias por vuestra atención > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > -- J.A.Zaratiegui Vallecillo a.k.a Zara *Sent from the Gate of TannhäuserEnviado desde la Puerta de Tannhäuser* *Von der Tannhäuser Tor geshickt* ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From marodal en gmail.com Fri May 22 12:26:54 2015 From: marodal en gmail.com (Miguel Angel Rodriguez) Date: Fri, 22 May 2015 12:26:54 +0200 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: References: <555EE383.6050008@arrakis.es> <555F01E8.3030801@arrakis.es> Message-ID: Sobre todo para ser una ciudad como Madrid... El 22 de mayo de 2015, 12:21, Zara escribió: > Siento tener que decirlo así de duro, pero ese sueldo es una miseria. > > Así pasa que todo el mundo está huyendo de España > > El 22 de mayo de 2015, 12:16, Marcos Sánchez Provencio > escribió: > >> 7h diarias, de L a V, sueldo mensual y horario orientativo. >> >> El 22/05/15 a las 12:10, itzcoalt alvarez moreno escribió: >> > Sólo por morbo, el sueldo es mensual. ? >> > La formada de trabajo es de lunes a viernes ? >> > >> > Enviado desde mi iPhone >> > >> >> El 22/05/2015, a las 03:06, Marcos Sánchez Provencio >> escribió: >> >> >> >> Hola, por si le interesa a alguien: >> >> >> >> La empresa: Meteogrid, sede en Gran Vía, Madrid. >> >> Puesto: Mantenimiento/desarrollo informático >> >> Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS >> >> Buen nivel de inglés >> >> >> >> La empresa es pequeña, así que toca hacer un poco de todo, como los que >> >> estamos. >> >> >> >> El sueldo orientativo sería 1000 EUR para una jornada de 7h. >> >> >> >> >> >> Gracias por vuestra atención >> >> >> >> _______________________________________________ >> >> Python-es mailing list >> >> Python-es en python.org >> >> https://mail.python.org/mailman/listinfo/python-es >> >> FAQ: http://python-es-faq.wikidot.com/ >> > _______________________________________________ >> > Python-es mailing list >> > Python-es en python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> > > > > -- > J.A.Zaratiegui Vallecillo a.k.a Zara > > *Sent from the Gate of TannhäuserEnviado desde la Puerta de Tannhäuser* > *Von der Tannhäuser Tor geshickt* > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Miguel Ángel Rodríguez de Alba 678304435 marodal en gmail.com ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From rapto en arrakis.es Fri May 22 12:27:52 2015 From: rapto en arrakis.es (=?windows-1252?Q?Marcos_S=E1nchez_Provencio?=) Date: Fri, 22 May 2015 12:27:52 +0200 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: References: <555EE383.6050008@arrakis.es> <555F01E8.3030801@arrakis.es> Message-ID: <555F04A8.40707@arrakis.es> Todo es negociable. El 22/05/15 a las 12:21, Zara escribió: > Siento tener que decirlo así de duro, pero ese sueldo es una miseria. > > Así pasa que todo el mundo está huyendo de España > > El 22 de mayo de 2015, 12:16, Marcos Sánchez Provencio > > escribió: > > 7h diarias, de L a V, sueldo mensual y horario orientativo. > > El 22/05/15 a las 12:10, itzcoalt alvarez moreno escribió: > > Sólo por morbo, el sueldo es mensual. ? > > La formada de trabajo es de lunes a viernes ? > > > > Enviado desde mi iPhone > > > >> El 22/05/2015, a las 03:06, Marcos Sánchez Provencio > > escribió: > >> > >> Hola, por si le interesa a alguien: > >> > >> La empresa: Meteogrid, sede en Gran Vía, Madrid. > >> Puesto: Mantenimiento/desarrollo informático > >> Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS > >> Buen nivel de inglés > >> > >> La empresa es pequeña, así que toca hacer un poco de todo, como > los que > >> estamos. > >> > >> El sueldo orientativo sería 1000 EUR para una jornada de 7h. > >> > >> > >> Gracias por vuestra atención > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > > -- > J.A.Zaratiegui Vallecillo a.k.a Zara > /Sent from the Gate of Tannhäuser > Enviado desde la Puerta de Tannhäuser/ > /Von der Tannhäuser Tor geshickt// > / > / > / > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From oscar.carballal en gmail.com Fri May 22 12:39:10 2015 From: oscar.carballal en gmail.com (Oscar Carballal) Date: Fri, 22 May 2015 11:39:10 +0100 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: <555F04A8.40707@arrakis.es> References: <555EE383.6050008@arrakis.es> <555F01E8.3030801@arrakis.es> <555F04A8.40707@arrakis.es> Message-ID: Marcos, Si realmente estais tan apretados de dinero como para no poder ofrecer un salario competitivo, intentad ofrecer condiciones competitivas. Con ese salario si añadís una clausula de trabajo remoto ya empezaría a ser razonable. El hecho de no tener que pagar vivienda y facturas es un gran incentivo. Siempre puedes poner en la clausula que el trabajador tiene que ir cada X tiempo a la oficina. Para que tengas un sueldo de referencia, un trabajo así anda entre los 1400-1600 euros netos. En Londres yo por ese mismo trabajo estoy en los 3500 euros netos (2500 libras) Por 1000 euros deberias esperar un junior sin experiencia en Haskell ni en PostGIS Regards, Oscar -- Oscar Carballal Prego - Senior Software Developer http://oscarcp.com | @pizte 2015-05-22 11:27 GMT+01:00 Marcos Sánchez Provencio : > Todo es negociable. > > El 22/05/15 a las 12:21, Zara escribió: > > Siento tener que decirlo así de duro, pero ese sueldo es una miseria. > > Así pasa que todo el mundo está huyendo de España > > El 22 de mayo de 2015, 12:16, Marcos Sánchez Provencio > escribió: > >> 7h diarias, de L a V, sueldo mensual y horario orientativo. >> >> El 22/05/15 a las 12:10, itzcoalt alvarez moreno escribió: >> > Sólo por morbo, el sueldo es mensual. ? >> > La formada de trabajo es de lunes a viernes ? >> > >> > Enviado desde mi iPhone >> > >> >> El 22/05/2015, a las 03:06, Marcos Sánchez Provencio >> escribió: >> >> >> >> Hola, por si le interesa a alguien: >> >> >> >> La empresa: Meteogrid, sede en Gran Vía, Madrid. >> >> Puesto: Mantenimiento/desarrollo informático >> >> Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS >> >> Buen nivel de inglés >> >> >> >> La empresa es pequeña, así que toca hacer un poco de todo, como los que >> >> estamos. >> >> >> >> El sueldo orientativo sería 1000 EUR para una jornada de 7h. >> >> >> >> >> >> Gracias por vuestra atención >> >> >> >> _______________________________________________ >> >> Python-es mailing list >> >> Python-es en python.org >> >> https://mail.python.org/mailman/listinfo/python-es >> >> FAQ: http://python-es-faq.wikidot.com/ >> > _______________________________________________ >> > Python-es mailing list >> > Python-es en python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> > > > > -- > J.A.Zaratiegui Vallecillo a.k.a Zara > > *Sent from the Gate of Tannhäuser Enviado desde la Puerta de Tannhäuser* > *Von der Tannhäuser Tor geshickt* > > > > _______________________________________________ > Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From rapto en arrakis.es Fri May 22 12:48:34 2015 From: rapto en arrakis.es (=?windows-1252?Q?Marcos_S=E1nchez_Provencio?=) Date: Fri, 22 May 2015 12:48:34 +0200 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: References: <555EE383.6050008@arrakis.es> <555F01E8.3030801@arrakis.es> <555F04A8.40707@arrakis.es> Message-ID: <555F0982.1010706@arrakis.es> Claro, mira que no especificamos casi nada, ni niveles ni condiciones de trabajo. Todo es negociable. Y sí, la situación es desesperada, vivimos de proyectos que van desapareciendo: estudios sobre prevención de incendios, impacto del clima en agricultura, etc, que van desapareciendo. No hablo de la situación económica y política porque he dado el nombre de mi empresa. El 22/05/15 a las 12:39, Oscar Carballal escribió: > Marcos, > > Si realmente estais tan apretados de dinero como para no poder ofrecer > un salario competitivo, intentad ofrecer condiciones competitivas. Con > ese salario si añadís una clausula de trabajo remoto ya empezaría a > ser razonable. El hecho de no tener que pagar vivienda y facturas es > un gran incentivo. Siempre puedes poner en la clausula que el > trabajador tiene que ir cada X tiempo a la oficina. > > Para que tengas un sueldo de referencia, un trabajo así anda entre los > 1400-1600 euros netos. En Londres yo por ese mismo trabajo estoy en > los 3500 euros netos (2500 libras) > > Por 1000 euros deberias esperar un junior sin experiencia en Haskell > ni en PostGIS > > Regards, > Oscar > > -- > Oscar Carballal Prego - Senior Software Developer > http://oscarcp.com | @pizte > > 2015-05-22 11:27 GMT+01:00 Marcos Sánchez Provencio >: > > Todo es negociable. > > El 22/05/15 a las 12:21, Zara escribió: >> Siento tener que decirlo así de duro, pero ese sueldo es una >> miseria. >> >> Así pasa que todo el mundo está huyendo de España >> >> El 22 de mayo de 2015, 12:16, Marcos Sánchez Provencio >> > escribió: >> >> 7h diarias, de L a V, sueldo mensual y horario orientativo. >> >> El 22/05/15 a las 12:10, itzcoalt alvarez moreno escribió: >> > Sólo por morbo, el sueldo es mensual. ? >> > La formada de trabajo es de lunes a viernes ? >> > >> > Enviado desde mi iPhone >> > >> >> El 22/05/2015, a las 03:06, Marcos Sánchez Provencio >> > escribió: >> >> >> >> Hola, por si le interesa a alguien: >> >> >> >> La empresa: Meteogrid, sede en Gran Vía, Madrid. >> >> Puesto: Mantenimiento/desarrollo informático >> >> Herramientas: Linux, Python, Haskell deseable, >> PostgreSQL/PostGIS >> >> Buen nivel de inglés >> >> >> >> La empresa es pequeña, así que toca hacer un poco de todo, >> como los que >> >> estamos. >> >> >> >> El sueldo orientativo sería 1000 EUR para una jornada de 7h. >> >> >> >> >> >> Gracias por vuestra atención >> >> >> >> _______________________________________________ >> ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From oscar.carballal en gmail.com Fri May 22 13:12:53 2015 From: oscar.carballal en gmail.com (Oscar Carballal) Date: Fri, 22 May 2015 12:12:53 +0100 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: <555F0982.1010706@arrakis.es> References: <555EE383.6050008@arrakis.es> <555F01E8.3030801@arrakis.es> <555F04A8.40707@arrakis.es> <555F0982.1010706@arrakis.es> Message-ID: No me tomes a mal lo que dije! Creo que fui un poco cortante jaja Conozco la situacion, la vivi en otra empresa en Galicia, donde al final me tuve que ir porque no entraba dinero suficiente, es lo que tiene trabajar para ciertos sectores :) Regards, Oscar -- Oscar Carballal Prego - Senior Software Developer http://oscarcp.com | @pizte 2015-05-22 11:48 GMT+01:00 Marcos Sánchez Provencio : > Claro, mira que no especificamos casi nada, ni niveles ni condiciones de > trabajo. Todo es negociable. > > Y sí, la situación es desesperada, vivimos de proyectos que van > desapareciendo: estudios sobre prevención de incendios, impacto del clima > en agricultura, etc, que van desapareciendo. No hablo de la situación > económica y política porque he dado el nombre de mi empresa. > > El 22/05/15 a las 12:39, Oscar Carballal escribió: > > Marcos, > > Si realmente estais tan apretados de dinero como para no poder ofrecer > un salario competitivo, intentad ofrecer condiciones competitivas. Con ese > salario si añadís una clausula de trabajo remoto ya empezaría a ser > razonable. El hecho de no tener que pagar vivienda y facturas es un gran > incentivo. Siempre puedes poner en la clausula que el trabajador tiene que > ir cada X tiempo a la oficina. > > Para que tengas un sueldo de referencia, un trabajo así anda entre los > 1400-1600 euros netos. En Londres yo por ese mismo trabajo estoy en los > 3500 euros netos (2500 libras) > > Por 1000 euros deberias esperar un junior sin experiencia en Haskell ni > en PostGIS > > Regards, > Oscar > > -- > Oscar Carballal Prego - Senior Software Developer > http://oscarcp.com | @pizte > > 2015-05-22 11:27 GMT+01:00 Marcos Sánchez Provencio : > >> Todo es negociable. >> >> El 22/05/15 a las 12:21, Zara escribió: >> >> Siento tener que decirlo así de duro, pero ese sueldo es una miseria. >> >> Así pasa que todo el mundo está huyendo de España >> >> El 22 de mayo de 2015, 12:16, Marcos Sánchez Provencio >> escribió: >> >>> 7h diarias, de L a V, sueldo mensual y horario orientativo. >>> >>> El 22/05/15 a las 12:10, itzcoalt alvarez moreno escribió: >>> > Sólo por morbo, el sueldo es mensual. ? >>> > La formada de trabajo es de lunes a viernes ? >>> > >>> > Enviado desde mi iPhone >>> > >>> >> El 22/05/2015, a las 03:06, Marcos Sánchez Provencio < >>> rapto en arrakis.es> escribió: >>> >> >>> >> Hola, por si le interesa a alguien: >>> >> >>> >> La empresa: Meteogrid, sede en Gran Vía, Madrid. >>> >> Puesto: Mantenimiento/desarrollo informático >>> >> Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS >>> >> Buen nivel de inglés >>> >> >>> >> La empresa es pequeña, así que toca hacer un poco de todo, como los >>> que >>> >> estamos. >>> >> >>> >> El sueldo orientativo sería 1000 EUR para una jornada de 7h. >>> >> >>> >> >>> >> Gracias por vuestra atención >>> >> >>> >> _______________________________________________ >>> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From riello57 en gmail.com Fri May 22 17:27:45 2015 From: riello57 en gmail.com (Fernando Garcia) Date: Fri, 22 May 2015 17:27:45 +0200 Subject: [Python-es] Tablero ajedrezado Message-ID: Quiero hacer un "juego" (en realidad no es un juego, mas bien un experimento) que consiste en: a)-Sobre un tablero ajedrezado, marcamos cada cuadrado de un color, blanco o negro pero aleatoriamente. b)-Cada casilla reacciona según las casillas de su entorno. Si es blanca y esta rodeada por dos o tres blancas, sigue blanca. Si no, cambia a negra. Si es negra y esta rodeada por dos blancas, cambia a blanca. Si no, sigue negra. tengo hecha la parte a), con el código que pongo a continuación, pero no se como abordar la parte b). ¿Alguna ayuda?. def Universo(ventana,ancho,alto): Botones(ventana,ancho,alto) espacio=Canvas(ventana, width=ancho, height=alto) espacio.pack() tablero(espacio,ancho,alto) def tablero(espacio,ancho,alto): x=0 y=0 while y From oscar.carballal en gmail.com Fri May 22 17:40:45 2015 From: oscar.carballal en gmail.com (Oscar Carballal) Date: Fri, 22 May 2015 16:40:45 +0100 Subject: [Python-es] Tablero ajedrezado In-Reply-To: References: Message-ID: [clippy aparece en tu pantalla] Parece que esta usted intentando crear un juego de la vida (Game of Life), tal vez estos articulos le sean de ayuda: https://jakevdp.github.io/blog/2013/08/07/conways-game-of-life/ http://usingpython.com/dl/GameOfLife.py http://stanford.edu/~cpiech/cs221/handouts/pythonTutorial.html Bromas aparte, para hacer la parte B seguramente te sea util operar con arrays bidimensionales (basicamente arrays de arrays). Echale un vistazo a los enlaces que te mando, no es demasiado complicado. Para conectar ambas partes puedes llamar a las funciones de tu programa en Tk desde tu operaciones en la logica del juego. Intentalo estudiando el codigo de esos ejemplos :) Regards, Oscar -- Oscar Carballal Prego - Senior Software Developer http://oscarcp.com | @pizte 2015-05-22 16:27 GMT+01:00 Fernando Garcia : > Quiero hacer un "juego" (en realidad no es un juego, mas bien un > experimento) que consiste en: > a)-Sobre un tablero ajedrezado, marcamos cada cuadrado de un color, blanco > o negro pero aleatoriamente. > b)-Cada casilla reacciona según las casillas de su entorno. Si es blanca y > esta rodeada por dos o tres blancas, sigue blanca. Si no, cambia a negra. > Si es negra y esta rodeada por dos blancas, cambia a blanca. Si no, sigue > negra. > > tengo hecha la parte a), con el código que pongo a continuación, pero no > se como abordar la parte b). ¿Alguna ayuda?. > > def Universo(ventana,ancho,alto): > Botones(ventana,ancho,alto) > espacio=Canvas(ventana, width=ancho, height=alto) > espacio.pack() > tablero(espacio,ancho,alto) > > def tablero(espacio,ancho,alto): > x=0 > y=0 > while y while x z=random.randint(0,1) > if z==0: > cuadradoVivo(espacio,x,y) > if z==1: > cuadradoMuerto(espacio,x,y) > x=x+15 > x=0 > y=y+15 > > def cuadradoVivo(espacio,x,y): > espacio.create_rectangle(x,y,x+15,y+15,fill='green') > > def cuadradoMuerto(espacio,x,y): > espacio.create_rectangle(x,y,x+15,y+15,fill='red') > > def Botones(ventana,ancho,alto): > def botonSalir(ventana): > Button(ventana, text="SALIR", command=root.destroy, > cursor='hand2').pack(side=LEFT) > def botonContinuar(ventana): > Button(ventana, text="CONTINUAR", > cursor='hand2').pack(side=LEFT) > def botonPausar(ventana): > Button(ventana, text="PAUSAR", > cursor='hand2').pack(side=LEFT) > def botonEmpezar(ventana): > Button(ventana, text="EMPEZAR", > cursor='hand2').pack(side=LEFT) > frameBotones=Frame(ventana) > botonEmpezar(frameBotones) > botonPausar(frameBotones) > botonContinuar(frameBotones) > botonSalir(frameBotones) > frameBotones.pack(fill=BOTH) > > > > #-*-*-*-*-*-*-*-*-*-*-*-*- > #*/*/*/*/*INIT*/*/*/*/* > #-*-*-*-*-*-*-*-*-*-*-*-*- > > root=Tk() > ancho,alto=root.maxsize() > Universo(root, ancho, alto) > > > root.mainloop() > > > Aclaro que el único botón que tengo funcionando es el de SALIR. > Gracias por la ayuda. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From riello57 en gmail.com Fri May 22 17:45:28 2015 From: riello57 en gmail.com (Fernando Garcia) Date: Fri, 22 May 2015 17:45:28 +0200 Subject: [Python-es] Tablero ajedrezado In-Reply-To: References: Message-ID: En efecto, leí en un libro una descripción del Juego de la vida y quise intentar ponerlo en marcha en Python. Gracias por los enlaces, los voy a consultar El 22/05/2015 17:41, "Oscar Carballal" escribió: > [clippy aparece en tu pantalla] Parece que esta usted intentando crear un > juego de la vida (Game of Life), tal vez estos articulos le sean de ayuda: > > https://jakevdp.github.io/blog/2013/08/07/conways-game-of-life/ > http://usingpython.com/dl/GameOfLife.py > http://stanford.edu/~cpiech/cs221/handouts/pythonTutorial.html > > Bromas aparte, para hacer la parte B seguramente te sea util operar con > arrays bidimensionales (basicamente arrays de arrays). Echale un vistazo a > los enlaces que te mando, no es demasiado complicado. Para conectar ambas > partes puedes llamar a las funciones de tu programa en Tk desde tu > operaciones en la logica del juego. > > Intentalo estudiando el codigo de esos ejemplos :) > > Regards, > Oscar > > -- > Oscar Carballal Prego - Senior Software Developer > http://oscarcp.com | @pizte > > 2015-05-22 16:27 GMT+01:00 Fernando Garcia : > >> Quiero hacer un "juego" (en realidad no es un juego, mas bien un >> experimento) que consiste en: >> a)-Sobre un tablero ajedrezado, marcamos cada cuadrado de un color, >> blanco o negro pero aleatoriamente. >> b)-Cada casilla reacciona según las casillas de su entorno. Si es blanca >> y esta rodeada por dos o tres blancas, sigue blanca. Si no, cambia a negra. >> Si es negra y esta rodeada por dos blancas, cambia a blanca. Si no, sigue >> negra. >> >> tengo hecha la parte a), con el código que pongo a continuación, pero no >> se como abordar la parte b). ¿Alguna ayuda?. >> >> def Universo(ventana,ancho,alto): >> Botones(ventana,ancho,alto) >> espacio=Canvas(ventana, width=ancho, height=alto) >> espacio.pack() >> tablero(espacio,ancho,alto) >> >> def tablero(espacio,ancho,alto): >> x=0 >> y=0 >> while y> while x> z=random.randint(0,1) >> if z==0: >> cuadradoVivo(espacio,x,y) >> if z==1: >> cuadradoMuerto(espacio,x,y) >> x=x+15 >> x=0 >> y=y+15 >> >> def cuadradoVivo(espacio,x,y): >> espacio.create_rectangle(x,y,x+15,y+15,fill='green') >> >> def cuadradoMuerto(espacio,x,y): >> espacio.create_rectangle(x,y,x+15,y+15,fill='red') >> >> def Botones(ventana,ancho,alto): >> def botonSalir(ventana): >> Button(ventana, text="SALIR", command=root.destroy, >> cursor='hand2').pack(side=LEFT) >> def botonContinuar(ventana): >> Button(ventana, text="CONTINUAR", >> cursor='hand2').pack(side=LEFT) >> def botonPausar(ventana): >> Button(ventana, text="PAUSAR", >> cursor='hand2').pack(side=LEFT) >> def botonEmpezar(ventana): >> Button(ventana, text="EMPEZAR", >> cursor='hand2').pack(side=LEFT) >> frameBotones=Frame(ventana) >> botonEmpezar(frameBotones) >> botonPausar(frameBotones) >> botonContinuar(frameBotones) >> botonSalir(frameBotones) >> frameBotones.pack(fill=BOTH) >> >> >> >> #-*-*-*-*-*-*-*-*-*-*-*-*- >> #*/*/*/*/*INIT*/*/*/*/* >> #-*-*-*-*-*-*-*-*-*-*-*-*- >> >> root=Tk() >> ancho,alto=root.maxsize() >> Universo(root, ancho, alto) >> >> >> root.mainloop() >> >> >> Aclaro que el único botón que tengo funcionando es el de SALIR. >> Gracias por la ayuda. >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Sat May 23 12:31:24 2015 From: pych3m4 en gmail.com (Chema Cortes) Date: Sat, 23 May 2015 12:31:24 +0200 Subject: [Python-es] Tablero ajedrezado In-Reply-To: References: Message-ID: El 22 de mayo de 2015, 17:45, Fernando Garcia escribió: > En efecto, leí en un libro una descripción del Juego de la vida y quise > intentar ponerlo en marcha en Python. > Gracias por los enlaces, los voy a consultar > También te puede interesar la implementación con numpy que hicieron los de pybonacci de este juego: http://pybonacci.org/2012/11/30/juego-de-la-vida-de-conway-con-python-usando-numpy/ Y mi propia implementación: https://gist.github.com/chemacortes/6257951#file-life-py > El 22/05/2015 17:41, "Oscar Carballal" > escribió: > >> [clippy aparece en tu pantalla] Parece que esta usted intentando crear un >> juego de la vida (Game of Life), tal vez estos articulos le sean de ayuda: >> >> https://jakevdp.github.io/blog/2013/08/07/conways-game-of-life/ >> http://usingpython.com/dl/GameOfLife.py >> http://stanford.edu/~cpiech/cs221/handouts/pythonTutorial.html >> >> Bromas aparte, para hacer la parte B seguramente te sea util operar con >> arrays bidimensionales (basicamente arrays de arrays). Echale un vistazo a >> los enlaces que te mando, no es demasiado complicado. Para conectar ambas >> partes puedes llamar a las funciones de tu programa en Tk desde tu >> operaciones en la logica del juego. >> >> Intentalo estudiando el codigo de esos ejemplos :) >> >> Regards, >> Oscar >> >> -- >> Oscar Carballal Prego - Senior Software Developer >> http://oscarcp.com | @pizte >> >> 2015-05-22 16:27 GMT+01:00 Fernando Garcia : >> >>> Quiero hacer un "juego" (en realidad no es un juego, mas bien un >>> experimento) que consiste en: >>> a)-Sobre un tablero ajedrezado, marcamos cada cuadrado de un color, >>> blanco o negro pero aleatoriamente. >>> b)-Cada casilla reacciona según las casillas de su entorno. Si es blanca >>> y esta rodeada por dos o tres blancas, sigue blanca. Si no, cambia a negra. >>> Si es negra y esta rodeada por dos blancas, cambia a blanca. Si no, sigue >>> negra. >>> >>> tengo hecha la parte a), con el código que pongo a continuación, pero no >>> se como abordar la parte b). ¿Alguna ayuda?. >>> >>> def Universo(ventana,ancho,alto): >>> Botones(ventana,ancho,alto) >>> espacio=Canvas(ventana, width=ancho, height=alto) >>> espacio.pack() >>> tablero(espacio,ancho,alto) >>> >>> def tablero(espacio,ancho,alto): >>> x=0 >>> y=0 >>> while y>> while x>> z=random.randint(0,1) >>> if z==0: >>> cuadradoVivo(espacio,x,y) >>> if z==1: >>> cuadradoMuerto(espacio,x,y) >>> x=x+15 >>> x=0 >>> y=y+15 >>> >>> def cuadradoVivo(espacio,x,y): >>> espacio.create_rectangle(x,y,x+15,y+15,fill='green') >>> >>> def cuadradoMuerto(espacio,x,y): >>> espacio.create_rectangle(x,y,x+15,y+15,fill='red') >>> >>> def Botones(ventana,ancho,alto): >>> def botonSalir(ventana): >>> Button(ventana, text="SALIR", command=root.destroy, >>> cursor='hand2').pack(side=LEFT) >>> def botonContinuar(ventana): >>> Button(ventana, text="CONTINUAR", >>> cursor='hand2').pack(side=LEFT) >>> def botonPausar(ventana): >>> Button(ventana, text="PAUSAR", >>> cursor='hand2').pack(side=LEFT) >>> def botonEmpezar(ventana): >>> Button(ventana, text="EMPEZAR", >>> cursor='hand2').pack(side=LEFT) >>> frameBotones=Frame(ventana) >>> botonEmpezar(frameBotones) >>> botonPausar(frameBotones) >>> botonContinuar(frameBotones) >>> botonSalir(frameBotones) >>> frameBotones.pack(fill=BOTH) >>> >>> >>> >>> #-*-*-*-*-*-*-*-*-*-*-*-*- >>> #*/*/*/*/*INIT*/*/*/*/* >>> #-*-*-*-*-*-*-*-*-*-*-*-*- >>> >>> root=Tk() >>> ancho,alto=root.maxsize() >>> Universo(root, ancho, alto) >>> >>> >>> root.mainloop() >>> >>> >>> Aclaro que el único botón que tengo funcionando es el de SALIR. >>> Gracias por la ayuda. >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From leonbravo en gmail.com Fri May 22 14:21:40 2015 From: leonbravo en gmail.com (Emilio Leon Maximiliano Bravo) Date: Fri, 22 May 2015 09:21:40 -0300 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: References: <555EE383.6050008@arrakis.es> <555F01E8.3030801@arrakis.es> <555F04A8.40707@arrakis.es> <555F0982.1010706@arrakis.es> Message-ID: Yo soy argentino, el sueldo ese en nuestro pais no seria tan mal, es mas, hasta me interesaria, deberias considerar la posibilidad de trabajo remoto. Igualmente soy junior El 22 de mayo de 2015, 8:12, Oscar Carballal escribió: > No me tomes a mal lo que dije! Creo que fui un poco cortante jaja > > Conozco la situacion, la vivi en otra empresa en Galicia, donde al final > me tuve que ir porque no entraba dinero suficiente, es lo que tiene > trabajar para ciertos sectores :) > > Regards, > Oscar > > -- > Oscar Carballal Prego - Senior Software Developer > http://oscarcp.com | @pizte > > 2015-05-22 11:48 GMT+01:00 Marcos Sánchez Provencio : > >> Claro, mira que no especificamos casi nada, ni niveles ni condiciones >> de trabajo. Todo es negociable. >> >> Y sí, la situación es desesperada, vivimos de proyectos que van >> desapareciendo: estudios sobre prevención de incendios, impacto del clima >> en agricultura, etc, que van desapareciendo. No hablo de la situación >> económica y política porque he dado el nombre de mi empresa. >> >> El 22/05/15 a las 12:39, Oscar Carballal escribió: >> >> Marcos, >> >> Si realmente estais tan apretados de dinero como para no poder ofrecer >> un salario competitivo, intentad ofrecer condiciones competitivas. Con ese >> salario si añadís una clausula de trabajo remoto ya empezaría a ser >> razonable. El hecho de no tener que pagar vivienda y facturas es un gran >> incentivo. Siempre puedes poner en la clausula que el trabajador tiene que >> ir cada X tiempo a la oficina. >> >> Para que tengas un sueldo de referencia, un trabajo así anda entre los >> 1400-1600 euros netos. En Londres yo por ese mismo trabajo estoy en los >> 3500 euros netos (2500 libras) >> >> Por 1000 euros deberias esperar un junior sin experiencia en Haskell ni >> en PostGIS >> >> Regards, >> Oscar >> >> -- >> Oscar Carballal Prego - Senior Software Developer >> http://oscarcp.com | @pizte >> >> 2015-05-22 11:27 GMT+01:00 Marcos Sánchez Provencio : >> >>> Todo es negociable. >>> >>> El 22/05/15 a las 12:21, Zara escribió: >>> >>> Siento tener que decirlo así de duro, pero ese sueldo es una miseria. >>> >>> Así pasa que todo el mundo está huyendo de España >>> >>> El 22 de mayo de 2015, 12:16, Marcos Sánchez Provencio >> > escribió: >>> >>>> 7h diarias, de L a V, sueldo mensual y horario orientativo. >>>> >>>> El 22/05/15 a las 12:10, itzcoalt alvarez moreno escribió: >>>> > Sólo por morbo, el sueldo es mensual. ? >>>> > La formada de trabajo es de lunes a viernes ? >>>> > >>>> > Enviado desde mi iPhone >>>> > >>>> >> El 22/05/2015, a las 03:06, Marcos Sánchez Provencio < >>>> rapto en arrakis.es> escribió: >>>> >> >>>> >> Hola, por si le interesa a alguien: >>>> >> >>>> >> La empresa: Meteogrid, sede en Gran Vía, Madrid. >>>> >> Puesto: Mantenimiento/desarrollo informático >>>> >> Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS >>>> >> Buen nivel de inglés >>>> >> >>>> >> La empresa es pequeña, así que toca hacer un poco de todo, como los >>>> que >>>> >> estamos. >>>> >> >>>> >> El sueldo orientativo sería 1000 EUR para una jornada de 7h. >>>> >> >>>> >> >>>> >> Gracias por vuestra atención >>>> >> >>>> >> _______________________________________________ >>>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From nuriapujolvilanova en gmail.com Fri May 22 17:34:04 2015 From: nuriapujolvilanova en gmail.com (=?UTF-8?B?TsO6cmlhIFB1am9s?=) Date: Fri, 22 May 2015 17:34:04 +0200 Subject: [Python-es] Tablero ajedrezado In-Reply-To: References: Message-ID: Lo que describes es un problema clásico llamado "Game of Life". En este link está más que bien explicado: https://jakevdp.github.io/blog/2013/08/07/conways-game-of-life/ Lo del tablero tb lo puedes "pintar" utilizando matplotlib. Espero que se sea de ayuda, Núria 2015-05-22 17:27 GMT+02:00 Fernando Garcia : > Quiero hacer un "juego" (en realidad no es un juego, mas bien un > experimento) que consiste en: > a)-Sobre un tablero ajedrezado, marcamos cada cuadrado de un color, blanco > o negro pero aleatoriamente. > b)-Cada casilla reacciona según las casillas de su entorno. Si es blanca y > esta rodeada por dos o tres blancas, sigue blanca. Si no, cambia a negra. > Si es negra y esta rodeada por dos blancas, cambia a blanca. Si no, sigue > negra. > > tengo hecha la parte a), con el código que pongo a continuación, pero no > se como abordar la parte b). ¿Alguna ayuda?. > > def Universo(ventana,ancho,alto): > Botones(ventana,ancho,alto) > espacio=Canvas(ventana, width=ancho, height=alto) > espacio.pack() > tablero(espacio,ancho,alto) > > def tablero(espacio,ancho,alto): > x=0 > y=0 > while y while x z=random.randint(0,1) > if z==0: > cuadradoVivo(espacio,x,y) > if z==1: > cuadradoMuerto(espacio,x,y) > x=x+15 > x=0 > y=y+15 > > def cuadradoVivo(espacio,x,y): > espacio.create_rectangle(x,y,x+15,y+15,fill='green') > > def cuadradoMuerto(espacio,x,y): > espacio.create_rectangle(x,y,x+15,y+15,fill='red') > > def Botones(ventana,ancho,alto): > def botonSalir(ventana): > Button(ventana, text="SALIR", command=root.destroy, > cursor='hand2').pack(side=LEFT) > def botonContinuar(ventana): > Button(ventana, text="CONTINUAR", > cursor='hand2').pack(side=LEFT) > def botonPausar(ventana): > Button(ventana, text="PAUSAR", > cursor='hand2').pack(side=LEFT) > def botonEmpezar(ventana): > Button(ventana, text="EMPEZAR", > cursor='hand2').pack(side=LEFT) > frameBotones=Frame(ventana) > botonEmpezar(frameBotones) > botonPausar(frameBotones) > botonContinuar(frameBotones) > botonSalir(frameBotones) > frameBotones.pack(fill=BOTH) > > > > #-*-*-*-*-*-*-*-*-*-*-*-*- > #*/*/*/*/*INIT*/*/*/*/* > #-*-*-*-*-*-*-*-*-*-*-*-*- > > root=Tk() > ancho,alto=root.maxsize() > Universo(root, ancho, alto) > > > root.mainloop() > > > Aclaro que el único botón que tengo funcionando es el de SALIR. > Gracias por la ayuda. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From rapto en arrakis.es Thu May 28 13:29:03 2015 From: rapto en arrakis.es (=?windows-1252?Q?Marcos_S=E1nchez_Provencio?=) Date: Thu, 28 May 2015 13:29:03 +0200 Subject: [Python-es] [OT] Oferta de trabajo In-Reply-To: <555EE383.6050008@arrakis.es> References: <555EE383.6050008@arrakis.es> Message-ID: <5566FBFF.2060708@arrakis.es> Hola a todxs. Dado que el trabajo incluye mantenimiento, sería necesario que hubiera disponibilidad física para venir a la oficina cuando fuera necesario. Gracias El 22/05/15 a las 10:06, Marcos Sánchez Provencio escribió: > Hola, por si le interesa a alguien: > > La empresa: Meteogrid, sede en Gran Vía, Madrid. > Puesto: Mantenimiento/desarrollo informático > Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS > Buen nivel de inglés > > La empresa es pequeña, así que toca hacer un poco de todo, como los que > estamos. > > El sueldo orientativo sería 1000 EUR para una jornada de 7h. > > > Gracias por vuestra atención > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ From sotonez en gmail.com Sat May 30 11:50:53 2015 From: sotonez en gmail.com (=?UTF-8?Q?Sergio_Soto_N=C3=BA=C3=B1ez?=) Date: Sat, 30 May 2015 11:50:53 +0200 Subject: [Python-es] [OT] Oferta de trabajo Message-ID: Buenas a todos, no sé cuál será tu puesto en la empresa. Pero espero que tu sueldo de para aguantar que te pongan la cara colorada en una lista de correo como es esta cuando la oferta que compartes es para un puesto mal remunerado y de esas condiciones. Y no lo digo a mal. Me he visto en una situación similar compartiendo en una lista de la Universidad de mi ciudad un puesto de trabajo con sueldo cercano al de tu oferta pero un perfil mas concreto. En mi caso fué por motivación propia y tuve que aguantar preguntas incómodas e incluso insolentes. Ánimo Un saludo 2015-05-28 13:29 GMT+02:00 Marcos Sánchez Provencio : > > Hola a todxs. Dado que el trabajo incluye mantenimiento, sería necesario > que hubiera disponibilidad física para venir a la oficina cuando fuera > necesario. > > Gracias > > El 22/05/15 a las 10:06, Marcos Sánchez Provencio escribió: > > Hola, por si le interesa a alguien: > > > > La empresa: Meteogrid, sede en Gran Vía, Madrid. > > Puesto: Mantenimiento/desarrollo informático > > Herramientas: Linux, Python, Haskell deseable, PostgreSQL/PostGIS > > Buen nivel de inglés > > > > La empresa es pequeña, así que toca hacer un poco de todo, como los que > > estamos. > > > > El sueldo orientativo sería 1000 EUR para una jornada de 7h. > > > > > > Gracias por vuestra atención > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ From jcaballero.hep en gmail.com Sat May 30 17:10:42 2015 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Sat, 30 May 2015 11:10:42 -0400 Subject: [Python-es] =?utf-8?q?Sobre_ofertas_de_trabajo_en_la_lista_de_cor?= =?utf-8?q?reo=2C_mi_opini=C3=B3n_=28aunque_no_le_interese_a_nadie=29?= Message-ID: Hola, hay a quien le parece bien que se anuncien ofertas de trabajo relacionadas con python en esta lista, y a quien le parece mal. A mí me parece bien. Pero sí me molestan las respuestas airadas de "por ese sueldo no me levanto de la cama". Pero yo recomendaría dar la mayor información posible en el anuncio. Todo lo que se pueda. Así uno sabe de entrada si podría estar interesado o no sin necesidad de tener que mandar muchos mensajes a la lista. -- Una descripción lo más detallada posible de las tareas a hacer. Mejor "instalar y mantener django version 1.2.3 en Fedora" que "tareas web". Creo que se me entinde. -- decir el lugar, y qué porcentaje del tiempo del tiempo hay que estar allí. Idem con la entrevista. ¿Se puede hacer por skype, por ejemplo? -- condiciones del contrato. Tiempo completo o parcial, temporal o fijo, etc. Hay quien prefiere no decir la empresa. Vale. Pero se pueden dar datos que ayudan a decidir si es una apuesta arriesgada o no. Yo, por ejemplo, vivo fuera y gano xx $ año por un curro que es más o menos 80% python. Y me gustaría volver a España. Puedo renunciar a un porcentaje de mi sueldo, pero a cambio necesito cierta garantía de estabilidad. Datos que pueden ayudar a estimarlo sin tener que decir el nombre de la empresa son: -- antigüedad de la empresa -- número de empleados -- volumen de facturación el año anterior Etc. Un saludo, Jose From the.merck en gmail.com Sat May 30 17:13:52 2015 From: the.merck en gmail.com (=?UTF-8?Q?Fernando_Jim=C3=A9nez?=) Date: Sat, 30 May 2015 15:13:52 +0000 Subject: [Python-es] Tablero ajedrezado In-Reply-To: References: Message-ID: Buenas, Yo hace tiempo hice uno para un ejercicio de TDD. Lo hice con pygame, pygrid y numpy, échale un ojo: https://github.com/themerck/bacterialColony Aquí tienes el ejercicio. Está hecho en java pero al menos ayuda para plantear el problema. http://www.pablotrinidad.es/tecnologeria/320 Espero que te sirva. Un saludo. El sáb., 23 de mayo de 2015 19:01, Núria Pujol escribió: > Lo que describes es un problema clásico llamado "Game of Life". > > En este link está más que bien explicado: > > https://jakevdp.github.io/blog/2013/08/07/conways-game-of-life/ > Lo del tablero tb lo puedes "pintar" utilizando matplotlib. > > Espero que se sea de ayuda, > > > Núria > > 2015-05-22 17:27 GMT+02:00 Fernando Garcia : > >> Quiero hacer un "juego" (en realidad no es un juego, mas bien un >> experimento) que consiste en: >> a)-Sobre un tablero ajedrezado, marcamos cada cuadrado de un color, >> blanco o negro pero aleatoriamente. >> b)-Cada casilla reacciona según las casillas de su entorno. Si es blanca >> y esta rodeada por dos o tres blancas, sigue blanca. Si no, cambia a negra. >> Si es negra y esta rodeada por dos blancas, cambia a blanca. Si no, sigue >> negra. >> >> tengo hecha la parte a), con el código que pongo a continuación, pero no >> se como abordar la parte b). ¿Alguna ayuda?. >> >> def Universo(ventana,ancho,alto): >> Botones(ventana,ancho,alto) >> espacio=Canvas(ventana, width=ancho, height=alto) >> espacio.pack() >> tablero(espacio,ancho,alto) >> >> def tablero(espacio,ancho,alto): >> x=0 >> y=0 >> while y> while x> z=random.randint(0,1) >> if z==0: >> cuadradoVivo(espacio,x,y) >> if z==1: >> cuadradoMuerto(espacio,x,y) >> x=x+15 >> x=0 >> y=y+15 >> >> def cuadradoVivo(espacio,x,y): >> espacio.create_rectangle(x,y,x+15,y+15,fill='green') >> >> def cuadradoMuerto(espacio,x,y): >> espacio.create_rectangle(x,y,x+15,y+15,fill='red') >> >> def Botones(ventana,ancho,alto): >> def botonSalir(ventana): >> Button(ventana, text="SALIR", command=root.destroy, >> cursor='hand2').pack(side=LEFT) >> def botonContinuar(ventana): >> Button(ventana, text="CONTINUAR", >> cursor='hand2').pack(side=LEFT) >> def botonPausar(ventana): >> Button(ventana, text="PAUSAR", >> cursor='hand2').pack(side=LEFT) >> def botonEmpezar(ventana): >> Button(ventana, text="EMPEZAR", >> cursor='hand2').pack(side=LEFT) >> frameBotones=Frame(ventana) >> botonEmpezar(frameBotones) >> botonPausar(frameBotones) >> botonContinuar(frameBotones) >> botonSalir(frameBotones) >> frameBotones.pack(fill=BOTH) >> >> >> >> #-*-*-*-*-*-*-*-*-*-*-*-*- >> #*/*/*/*/*INIT*/*/*/*/* >> #-*-*-*-*-*-*-*-*-*-*-*-*- >> >> root=Tk() >> ancho,alto=root.maxsize() >> Universo(root, ancho, alto) >> >> >> root.mainloop() >> >> >> Aclaro que el único botón que tengo funcionando es el de SALIR. >> Gracias por la ayuda. >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From mlacunza en gmail.com Sat May 30 17:38:24 2015 From: mlacunza en gmail.com (Mario Lacunza) Date: Sat, 30 May 2015 10:38:24 -0500 Subject: [Python-es] =?utf-8?q?Sobre_ofertas_de_trabajo_en_la_lista_de_cor?= =?utf-8?q?reo=2C_mi_opini=C3=B3n_=28aunque_no_le_interese_a_nadie=29?= In-Reply-To: References: Message-ID: <5569D970.2020107@gmail.com> Hola, yo creo q una vez puesto el anuncio el resto de comunicaciones deben ir x privado, es asi como se maneja en otras listas. Saludos / Best regards Mario Lacunza Email:: mlacunza en gmail.com Personal Website:: http://www.lacunza.biz/ Hosting:: http://mlv-host.com/ Mascotas Perdidas:: http://mascotas-perdidas.com/ Google Hangouts / / Skype: mlacunzav El 30/05/15 a las 10:10, Jose Caballero escribió: > Hola, > > > hay a quien le parece bien que se anuncien ofertas de trabajo relacionadas con python en esta lista, y a quien le parece mal. A mí me parece bien. > Pero sí me molestan las respuestas airadas de "por ese sueldo no me levanto de la cama". > > Pero yo recomendaría dar la mayor información posible en el anuncio. Todo lo que se pueda. Así uno sabe de entrada si podría estar interesado o no sin necesidad de tener que mandar muchos mensajes a la lista. > > -- Una descripción lo más detallada posible de las tareas a hacer. Mejor "instalar y mantener django version 1.2.3 en Fedora" que "tareas web". Creo que se me entinde. > > -- decir el lugar, y qué porcentaje del tiempo del tiempo hay que estar allí. Idem con la entrevista. ¿Se puede hacer por skype, por ejemplo? > > -- condiciones del contrato. Tiempo completo o parcial, temporal o fijo, etc. > > Hay quien prefiere no decir la empresa. Vale. Pero se pueden dar datos que ayudan a decidir si es una apuesta arriesgada o no. Yo, por ejemplo, vivo fuera y gano xx $ año por un curro que es más o menos 80% python. Y me gustaría volver a España. Puedo renunciar a un porcentaje de mi sueldo, pero a cambio necesito cierta garantía de estabilidad. Datos que pueden ayudar a estimarlo sin tener que decir el nombre de la empresa son: > -- antigüedad de la empresa > -- número de empleados > -- volumen de facturación el año anterior > > Etc. > > Un saludo, > Jose > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > From karreyes en gmail.com Sat May 30 21:20:15 2015 From: karreyes en gmail.com (Karla Reyes) Date: Sat, 30 May 2015 12:20:15 -0700 Subject: [Python-es] =?utf-8?q?Sobre_ofertas_de_trabajo_en_la_lista_de_cor?= =?utf-8?q?reo=2C_mi_opini=C3=B3n_=28aunque_no_le_interese_a_nadie?= =?utf-8?q?=29?= In-Reply-To: <5569D970.2020107@gmail.com> References: <5569D970.2020107@gmail.com> Message-ID: que buena conversacion!. me parece excelente poner reglas de conducta para anunciar los trabajos, de manera que sea un buen recurso y provea la información necesaria. Así como reglas de respeto si las posiciones no se acomodan a tus circunstancias o expectativas. En otras listas, hemos tenido problemas similares, y se ha llegado a la conclusion de pedir se incluya en el titulo del email este formato: [JOB/trabajo][Ciudad y/o pais] posición , compania (opcional) por ejemplo, los correos se ven así: [grupo] [SF] Software Engineer (JS) @ Kink.com [grupo] [JOB] [BERLIN] CTO @ Clue [grupo] [JOB] eBook Technical Specialist at Simon & Schuster (Javascript/Ruby) - NYC Esto ayuda mucho, sobretodo si ya sabes si por cuestiones familiares o de otro tipo estas dispuesto a mudarte de ciudad o país. que tengan buen fin de semana, Karla @pitonisax 2015-05-30 8:38 GMT-07:00 Mario Lacunza : > Hola, > > yo creo q una vez puesto el anuncio el resto de comunicaciones deben ir x > privado, es asi como se maneja en otras listas. > > Saludos / Best regards > > Mario Lacunza > Email:: mlacunza en gmail.com > Personal Website:: http://www.lacunza.biz/ > Hosting:: http://mlv-host.com/ > Mascotas Perdidas:: http://mascotas-perdidas.com/ > Google Hangouts / / Skype: mlacunzav > > El 30/05/15 a las 10:10, Jose Caballero escribió: > > Hola, >> >> >> hay a quien le parece bien que se anuncien ofertas de trabajo >> relacionadas con python en esta lista, y a quien le parece mal. A mí me >> parece bien. >> Pero sí me molestan las respuestas airadas de "por ese sueldo no me >> levanto de la cama". >> >> Pero yo recomendaría dar la mayor información posible en el anuncio. Todo >> lo que se pueda. Así uno sabe de entrada si podría estar interesado o no >> sin necesidad de tener que mandar muchos mensajes a la lista. >> >> -- Una descripción lo más detallada posible de las tareas a hacer. Mejor >> "instalar y mantener django version 1.2.3 en Fedora" que "tareas web". Creo >> que se me entinde. >> >> -- decir el lugar, y qué porcentaje del tiempo del tiempo hay que estar >> allí. Idem con la entrevista. ¿Se puede hacer por skype, por ejemplo? >> >> -- condiciones del contrato. Tiempo completo o parcial, temporal o fijo, >> etc. >> >> Hay quien prefiere no decir la empresa. Vale. Pero se pueden dar datos >> que ayudan a decidir si es una apuesta arriesgada o no. Yo, por ejemplo, >> vivo fuera y gano xx $ año por un curro que es más o menos 80% python. Y me >> gustaría volver a España. Puedo renunciar a un porcentaje de mi sueldo, >> pero a cambio necesito cierta garantía de estabilidad. Datos que pueden >> ayudar a estimarlo sin tener que decir el nombre de la empresa son: >> -- antigüedad de la empresa >> -- número de empleados >> -- volumen de facturación el año anterior >> >> Etc. >> >> Un saludo, >> Jose >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: