Re: [Python-es] [Py-MAD] ¿Foro integrable en django?
El lun., 10 dic. 2018 a las 18:09, lasizoillo () escribió: > > > Y ahora te hago yo una pregunta técnica que siempre me surge con este tipo > de cosas: ¿Usais GenericForeignKeys para unir los hilos de comentarios a > vuestras diferentes entidades (artículo, pagina, receta de cocina, lo que > sea) o huis de ellos como de la peste? Siempre me pasa que por un lado me > parece un diseño elegante y desacoplado, pero por otro que las relaciones > n:m que se generan acaban haciendo de mi vida una pesadilla. ¿Cómo lo > resolvéis vosotros? > No como la peste, pero sí que intento evitarlos siempre que puedo, a no ser que la variedad de entidades a enlazar sea muy muy alta (que queramos permitir poner comentarios asociados a 20 modelos distintos), o que haya que hacer queries transversales a todas las entidades (por ejemplo: "dime el usuario que ha hecho más comentarios en toda la aplicación, me da igual dónde"). En esos casos sí pueden tener sentido. Los GenericForeignKeys tienen varios problemas, en mi opinión: - Hay que conocerlos bien para entender lo que están haciendo, con lo que la legibilidad y mantenibilidad del código se resiente. Si has visto código que los use, no siempre es obvio lo que está haciendo. Si lo único que es tener comentarios en un par de sitios, creo que no merece la pena. - El problema más gordo de todos: el esquema de base de datos que generan es muy, muy, muy problemático. Ten en cuenta que no son foreign keys de verdad, sino únicamente una convención definida por Django, por lo que la integridad referencial en la base de datos se va a tomar vientos. La mayoría de las veces, se puede tener funcionalidad parecida simplemente usando herencia de modelos. Por ejemplo, te creas un modelo "CommentableModel", y todo lo que pueda admitir comentarios heredaría de él. Luego el modelo del comentario sería algo tipo: class Comment(models.Model): ...unos cuantos campos... parent = models.ForeignKey(CommentableModel, on_delete=models.CASCADE) O, más fácil aún, creas modelos intermedios para cada modelo "Comentable". Esto no es muy DRY, pero si el número de modelos comentables es pequeño, al final acaba siendo lo más fácil de leer, entender y mantener. ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es
Re: [Python-es] [Py-MAD] ¿Foro integrable en django?
El dom., 9 dic. 2018 a las 1:50, lasizoillo () escribió: > Buenas, > > Respondo entre lineas. > Ídem. > ¿Qué sería funcionalidad custom? No es lo mismo algo que se pueda hacer > con un par de queries en el context request que algo que afecte a los > requisitos intrínsecos de un foro. > Me refiero a cosas como autogenerar enlaces al perfil de un usuario al escribir "@usuario" (y el perfil sería el que ya existe en nuestra aplicación, no el propio que genere el foro), o permitir incrustar "tarjetas" cuando se incluyan enlaces a otras partes de la aplicación (algo parecido a lo que hacen twitter o slack cuando envías una URL de un periódico, por ejemplo). Ese tipo de cosas. Es decir, integrar el foro con nuestra aplicación, y que no sea simplemente un apéndice aislado. Luego está el tema de personalizar estilos de templates (evitar el efecto > frankenweb), incluir urls, escribir los nuevos settings, ... Y todo esto > teniendo en cuenta la que se te puede liar en cada actualización porque > tienes que repasar las personalizaciones. Cuanta más integración quieras, > más dolor al actualizar. Hay cosas que parecen fáciles de integrar, como el > tema de añadir más secciones a la visualización del profile, a la edición > de profile o pestañas en el listado de usuarios (por ejemplo filtrar por > departamento). Y a pesar de eso está tan penósamente documentado que lo vi > mirando el código, es posible que haya más cosas fáciles de personalizar > que no te obliguen a hacer forks. > Claro, a este tipo de cosas me refiero. Nos hace falta que la personalización sea algo más elaborado que simplemente compartir autenticación y customizar plantillas. Necesitamos acceder a urls de otras partes de la aplicación (el reverse() que mencionas), ampliar las funcionalidades del foro, compartir permisos de moderación (tenemos sistema de comentarios en otras partes del sistema), etc. Al final, basándome en la experiencia, me veo que la integración va a ser tan ad-hoc y tan acoplada a la implementación de una versión concreta de Misago que a la larga lo más probable es que acabemos o bien forkeando, o bien congelando la versión que usemos, simplemente para que la cosa sea mínimamente mantenible (porque dudo mucho que una aplicación de este estilo se ande con muchas delicadezas a la hora de mantener la compatibilidad hacia atrás, y menos aún con los APIs internos a los que tendríamos que acceder). Basándome en lo que he estado mirando yo, y lo que me comentas tú, creo que nos va a resultar más viable refactorizar y ampliar la funcionalidad de comentarios que ya tenemos y construir el sistema de foros alrededor. No me convence mucho, porque probablemente nos cueste bastante más tiempo, pero me quedaré más tranquilo de cara a que podamos incluir exactamente la funcionalidad que nos haga falta, y que dentro de dos años no nos veamos con una deuda técnica gigante. ¡¡Muchísimas gracias por tu respuesta tan exhaustiva!! César. ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es
[Python-es] ¿Foro integrable en django?
¡Hola! Ando buscando un foro que pueda integrar en una aplicación ya existente en Django. "Integrar" en este caso significa: - Poder usar nuestro propio modelo de usuario ya existente. - Que la sesión creada en el foro se mantenga en la aplicación y viceversa, sin necesidad de autenticarse por separado. - Idealmente, que si necesitamos alguna funcionalidad custom, podamos hacerlo con plugins, sin necesidad de forkear nuestra propia versión del foro. - Y ya si el foro fuera medianamente modernillo y no recordara a forocoches o a un phpBB de hace 20 años, me haríais feliz. :-) Opciones que hemos medio descartado: - Misago [1] parece muy majo, tiene bastante comunidad y el desarrollo está activo, pero es una aplicación completamente standalone. Ni permiten la integración ni se lo plantean a futuro. - Spirit [2] tiene bastantes estrellas en github, pero apenas tiene documentación. No he encontrado la forma de ver si permite hacer algo de lo que necesitamos. - Django-machina [3] parece que sí permite cierto nivel de integración, pero la mecánica del foro es algo viejuna. A pesar de eso, parece la opción más viable. Por otro lado, otra opción es usar otro software, tipo Discourse, y tratar de integrarlo con un single sign-on o algo parecido, pero preferiría evitarlo. Implicaría desplegar un entorno completamente distinto, otra base de datos, programar extensiones en otro lenguaje y framework... No suena a buena idea. A ver si se os ocurre algo que podamos usar. ¡¡Muchas gracias!! César. [1] https://github.com/rafalp/misago [2] https://github.com/nitely/Spirit [3] https://github.com/ellmetha/django-machina ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es
Re: [Python-es] Treemaps
Yo lo he leído varias veces traducido como "diagrama de árbol". Saludos. *César García Tapia* Director técnico Tlf: +34 663 273 481 <+34+663+273+481> Skype: cesargarciatapia <#UNIQUE_ID_SafeHtmlFilter_> Web: https://www.openshine.com/ El 29 de marzo de 2018, 16:59, Francois Dion <francois.d...@gmail.com> escribió: > Hola, > > Estoy buscando el termino exacto para un Treemap (en ingles), como por > ejemplo con plotly y python: > > https://plot.ly/python/treemaps/ > > Mapa de árbol? > > Gracias, > François > > > -- > about.me/francois.dion > > ___ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > > ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es
Re: [Python-es] Mejora de codigo.
¿Por qué no te gusta? Las excepciones sirven exactamente para eso. Que se suelan usar para control de errores no significa que sea su único uso correcto. Eso sí, siempre debes usar la excepción más específica posible, así que en vez de "except" deberías poner "except TypeError", que es la excepción que lanza fromtimestamp() si le pasas algo que no sea un número. Un saludo. *César García Tapia* Director técnico Tlf: +34 663 273 481 <+34+663+273+481> Skype: cesargarciatapia <#UNIQUE_ID_SafeHtmlFilter_> Web: https://www.openshine.com/ El 3 de julio de 2017, 17:41, Nicolas lino <nicolasli...@gmail.com> escribió: > Buenas. > > A alguien se le ocurre una manera mas prolija o una librería para hacer lo > siguiente: > > > >>> a > 1499095933.289 > >>> b > 'asdasdsa' > >>> def is_timestamp(var): > ... try: > ... datetime.fromtimestamp(var) > ... return True > ... except: > ... return False > ... > >>> is_timestamp(a) > True > >>> is_timestamp(b) > False > > > No me gusta la idea de usar un try y forzar una excepción para validar si > es un timestamp. Pero no se me a ocurrido nada mejor. > > > Gracias! > > > > ___ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > > ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es
Re: [Python-es] Python para niños
it-ebooks hace tiempo que quitó los enlaces de descarga directa, por lo que no debería suponer mayor problema poner enlaces a su web. Un saludo. *César García Tapia* Director técnico Tlf: +34 663 273 481 <+34+663+273+481> Skype: cesargarciatapia <#UNIQUE_ID_SafeHtmlFilter_> Web: https://www.openshine.com/ El 4 de abril de 2017, 10:00, Kiko <kikocorre...@gmail.com> escribió: > >> * Libro python for kids: http://it-ebooks.info/book/2226/ >> >> > Por favor, evitad poner enlaces de descarga a material con copyright. Hay > que respetar el trabajo de otros y evitar poner en lios a una comunidad > ante determinadas legislaciones. > > Saludos. > > ___ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > > ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es
[Python-es] [JOB] Oferta de trabajo en Madrid - OpenShine
OpenShine <https://openshine.com/> es una pequeña empresa de desarrollo de software, especializada en Web, Móvil y DevOps. Estamos construyendo un equipo técnico sin jerarquías, en el que las decisiones se toman entre todos, y con una transparencia absoluta en lo relativo a la gestión de la empresa. Nuestro propósito es crecer de manera sostenible, creando productos de alta calidad y divirtiéndonos por el camino. *¿Qué buscamos?* - Desarrolladores. Hackers. Llámalo como quieras, ya sabes a qué nos referimos. Idealmente con más de 3 o 4 años de experiencia. - Que tengas pasión por tu profesión. Si aprendes nuevos lenguajes, frameworks y tecnologías por simple curiosidad, OpenShine es tu sitio. - Especial atención a la calidad, el detalle y las buenas prácticas. - Experiencia e interés tanto en el backend como en el frontend (aunque suelas trabajar sólo en uno de los lados, queremos que tengas una visión completa de los proyectos). - Implicación y actitud participativa. No queremos asignarte tareas, sino definirlas entre todos. Actualmente trabajamos con las siguientes tecnologías, entre otras muchas. Esto no es una lista de requisitos, es únicamente para darte una idea del tipo de proyectos que hacemos: - Python - Django - Angular2 - Spark - Kafka - Cassandra - ElasticSearch - Android / Xamarin - Docker / Kubernetes - Salt / Ansible *¿Qué ofrecemos?* - Ambiente de trabajo informal y estimulante. - Si te gusta teletrabajar, podrás hacerlo la mayor parte del tiempo. La oficina está para cuando hace falta. - Oficina en el centro de Madrid, en la misma glorieta de San Bernardo. - Participar en la creación de una cultura empresarial diferente. - Facilidad para la formación: charlas en la oficina, asistencia a eventos, etc. - Libertad para elegir las tecnologías de tus proyectos. - Salario entre 30.000€ y 35.000€ Si te interesa, mándanos tu CV a i...@openshine.com y nos pondremos en contacto contigo. *César García Tapia* Director técnico Tlf: +34 663 273 481 <+34+663+273+481> Skype: cesargarciatapia <#UNIQUE_ID_SafeHtmlFilter_> Web: https://www.openshine.com/ ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es
Re: [Python-es] Deberia usar Django con Python 2 o Python3
Salvo que vayas a usar alguna aplicación de terceros que te lo impida, la recomendación es usar python3 para cualquier nuevo desarrollo. Un saludo. César García Tapia cesar.garcia.ta...@openshine.com +34 663 273 481 El 7 de diciembre de 2015, 18:27, JZA <acolor...@gmail.com> escribió: > Tambien acaba de salir la version 1.9 y si incluye algunos cambios te > recomiendo verificarlos. > > 2015-12-07 11:10 GMT-06:00 Victor <revxf...@gmail.com>: > >> Buenas >> Ante todo gracias por sus respuestas, estoy iniciándome en un >> proyecto algo grande, es la primera vez que usare Django para esto me ha >> encantado la verdad, mi pregunta es si debería trabajar Django con la >> version 3 de python o todavía a pesar de que es estable me puede generar >> incomodidades?. >> >> Quisiera saber sus experiencias en este tema. >> >> Gracias. >> >> >> Victor H. Villalobos B. >> CEO & Project Manager. >> Firesoft International C.A >> Software Developer. >> Telf: +584126882141 >> Direccion: Maracaibo- Zulia, Av 5 de Julio con Av 12, Edificio Wigozky. >> Mail:vvillalo...@firesoft.com.ve >> Mail # 2: geren...@firesoft.com.ve >> Web: www.firesoft.com.ve >> Skype: victorvillalo...@outlook.com >> >> >> >> ___ >> Python-es mailing list >> Python-es@python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> > > > > -- > Alexandro Colorado > Apache OpenOffice Contributor > 9060 55AB FFD2 2F02 0E1A 3409 599C 14FC 9450 D3CF > > ___ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Se busca colaborador fijo para el podcast "Python en español"
Hola, Jesús. A mi me gustaría colaborar, si te parece. Lo único que me falta de lo que pides es el micrófono, pero eso tiene buen remedio ;-) Sería interesante saber el horario en el que soléis hacer las grabaciones (mañanas, tardes, fines de semana...), para poder garantizar la disponibilidad. Un saludo. César García Tapia cesar.garcia.ta...@openshine.com +34 663 273 481 El 4 de diciembre de 2015, 17:35, Jesus Cea <j...@jcea.es> escribió: > Estoy buscando (al menos) una persona regular para tener debate en el > podcast "python en español". La dedicación es de más o menos media hora > a la semana para la grabación en sí más, tal vez, un par de horas para > experimentar y familiarizarse con la tecnología que se proponga para el > debate, si es el caso. Necesario hablar bien, no soltar tacos, tener un > micrófono decente y, sobre todo, mucha curiosidad y ganas con Python, > aprender funciones nuevas, etc. > > Si hay varios voluntarios ya sería la leche :). > > Adicionalmente nos vendría bien tener alguien que se encargue de la > edición del podcast. Es la parte más ingrata y menos valorada y, al > final, la que frena el podcast. Hay ya mucho trabajo hecho en > procedimientos y experiencia, pero hace falta alguien con el Audacity. > > ¿Que qué es "Python en español"? > > https://blog.jcea.es/posts/20151015-estadisticas_podcast.html > > http://podcast.jcea.es/python/ > > Interesados, escribid a mi email personal. Las dudas generales las puedo > responder en la lista de correo, para beneficio de todos. > > PS: Lamentablemente, todas estos trabajos son voluntarios. No hay > remuneración. Al menos no de momento. > > -- > Jesús Cea Avión _/_/ _/_/_/_/_/_/ > j...@jcea.es - http://www.jcea.es/ _/_/_/_/ _/_/_/_/ _/_/ > Twitter: @jcea_/_/_/_/ _/_/_/_/_/ > jabber / xmpp:j...@jabber.org _/_/ _/_/_/_/ _/_/ _/_/ > "Things are not so easy" _/_/ _/_/_/_/ _/_/_/_/ _/_/ > "My name is Dump, Core Dump" _/_/_/_/_/_/ _/_/ _/_/ > "El amor es poner tu felicidad en la felicidad de otro" - Leibniz > > > ___ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] 'Heredar' un venv dentro de otro
A mi me suena muy problemático lo que andas intentando hacer. Como se ha dicho por aquí, la gracia de virtualenv es tener aislados entornos de ejecución únicos por aplicación. Si empiezas a compartir los paquetes corres el riesgo de caer en un "DLL hell", donde actualizar una versión de un paquete provoque que empiecen a cascar ciertos entornos que dependen de la versión antigua. O, si lo intentas hacer bien, al actualizar un paquete en un virtualenv concreto, tendrías que recorrer todos los virtualenvs que dependen de él (mejor dicho, recorrer el árbol de virtualenvs que cuelgan de él) para actualizar las dependencias. No creo que te arriende la ganancia, francamente. César García Tapia cesar.garcia.ta...@openshine.com +34 663 273 481 El 30 de noviembre de 2015, 16:39, Kiko <kikocorre...@gmail.com> escribió: > > > El 30 de noviembre de 2015, 16:23, Jose Caballero < > jcaballero@gmail.com> escribió: > >> El día 29 de noviembre de 2015, 14:48, Kiko <kikocorre...@gmail.com> >> escribió: >> > Hola. >> > >> > No sé si esta será la pregunta rara del día. Ahí va. >> > >> > Imaginad que tengo un venv, llamémosle venv-base, donde tengo instalado >> > cosas que siempre uso (p.e., numpy, scipy, matplotib y pandas) y que >> suele >> > ser un poco incordio instalar usando pip. >> > >> > ¿Se podría crear un venv que usase estas librerías (las 'heredase' de >> > venv-base) además de las suyas particulares sin tener que instalar >> numpy, >> > scipy, matplotlib, pandas en el nuevo venv? >> > >> > Algo parecido a la opción --system-site-packages >> > ( >> https://virtualenv.readthedocs.org/en/latest/userguide.html#the-system-site-packages-option >> ) >> > >> > No quiero tener numpy, scipy, matplotlib y Pandas instaladas de base en >> el >> > sistema pero tampoco quiero tener que instalarlas con cada nuevo venv. >> > >> > Conda/Anaconda ayuda a manejar alguno de los problemas pero, sin tener >> una >> > burrada de venv's ni de librerías instaladas, tengo carpetas de 6Gb o >> más. >> > >> > Supongo que lo que quiero no existe y, sin pensar mucho en ello, veo >> > millones de posibles conflictos a manejar. >> > >> > ¿Sería útil que existiera algo así si no existe ya? >> > >> > >> >> >> Me suena a Docker. >> > > Buff, ordenador del curro + windows + docker (máquina virtual, etc) me > suena un poco overkill para lo que quiero. > > ___ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
[Python-es] Oferta de trabajo para freelances.
¡Hola! Estamos buscando desarrolladores freelance para colaborar con nosotros en varios proyectos, basados principalmente en Django y Spark, con posibilidad, si os interesara, de incorporación a la empresa tras la finalización del proyecto. Se trata de varios proyectos, de una duración de entre 2 y 8 meses. No habría ningún problema en trabajar en remoto, con un par de reuniones presenciales mensuales. Si alguien está interesado, mi email y teléfono están en mi firma. Y os agradecería si conocéis a alguien que le pueda interesar y le ponéis en contacto conmigo. ¡Muchas gracias! César García Tapia cesar.garcia.ta...@openshine.com +34 663 273 481 ___ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
Gracias a todos por sus valiosos aportes creo lograre hacer el gráfico con alguna de las herramientas mencionadas El viernes 27 de abril de 2012, Daπid escribió: 2012/4/27 #Miken - michael.iba...@gmail.com javascript:;: para armar el grafo puedes utilizar digraph[1] Networkx permite hacer gráficos de las redes. Algunos ejemplos: http://networkx.lanl.gov/examples/drawing/weighted_graph.html http://networkx.lanl.gov/examples/drawing/random_geometric_graph.html Un aviso sobre el tamaño de la red: la clave en estos gráficos está en el cálculo de la modularidad de la red, para colocar los nodos muy interconectados cerca. Networkx tiene integrado el algoritmo espectral de Newman (draw_spectral), que funciona bien en redes no muy grandes. Del artículo de Newman: For the largest of the networks studied here, [...] which has 27,000 vertices, the algorithm takes 20 min to run on a standard personal computer (circa 2006). Blondel et al. tienen otro algoritmo más rápido, que en mi máquina (similar), tarda 27 segundos. http://perso.crans.org/aynaud/communities/ David. ___ Python-es mailing list Python-es@python.org javascript:; http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
[Python-es] Analizar trafico
Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
G V, en este caso en específico considero sospechoso muchas conexiones desde y hacia un sitio. Jeyson, en este caso en particular no tengo el pcap, el cual como acertadamente mencionas me aligeraría mucha la carga. El 27 de abril de 2012 11:22, Jeyson Henao jahena...@gmail.com escribió: Hola, Las capturas de red en esta caso .pcap son precisamente para esto, que con el uso de una herramienta (wireshark) puedes determinar mediante tu análisis y el apoyo en la herramientas las actividades realizadas por dichas maquina. O enfocarte en una herramienta que te parseado de la info que tienes en ese archivo. Saludos... 2012/4/27 G V nada...@gmail.com qué considerarias sospechoso? muchas conexiones a un mismo sitio? desde un mismo sitio? una secuencia? 2012/4/27 César García cel...@gmail.com: Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
Acabo de encontrar esto, no es python, pero podría ayudar a solucionar el problema, talvez se podría automatizar con las librerias para graphviz en python. El 27 de abril de 2012 14:27, #Mike - michael.iba...@gmail.com escribió: El día 27 de abril de 2012 15:14, Carlos Herrera Polo carlos.herrerap...@gmail.com escribió: Coincido con Cesar. Seria interesante alguna herramiente que pueda tomar las variables que mencionas y mostrar el trafico graficamente. Mi caso imagino es similar al tuyo Cesar, tengo un firewall Juniper que envia por syslog el trafico de red, con un script en python que hice convierto esos registros en valores que inserto en una base de datos Mysql ya con los resumenes de trafico x usuario, pero eso es todo y no ayuda demasiado... Si se pudiera utilizar algo para volcar esa informacion a graficas seria genial Bueno, graficar el tráfico ni idea, pero para armar el grafo puedes utilizar digraph[1]; y puedes localizar a donde pertenecen a través de un whois o utilizar la información de RIR[2]. [1] http://networkx.lanl.gov/reference/classes.digraph.html [2] http://www-public.it-sudparis.eu/~maigron/RIR_Stats/RIR_Delegations/LACNIC/IPv4-ByNb.html El 27/04/12, César García cel...@gmail.com escribió: G V, en este caso en específico considero sospechoso muchas conexiones desde y hacia un sitio. Jeyson, en este caso en particular no tengo el pcap, el cual como acertadamente mencionas me aligeraría mucha la carga. El 27 de abril de 2012 11:22, Jeyson Henao jahena...@gmail.com escribió: Hola, Las capturas de red en esta caso .pcap son precisamente para esto, que con el uso de una herramienta (wireshark) puedes determinar mediante tu análisis y el apoyo en la herramientas las actividades realizadas por dichas maquina. O enfocarte en una herramienta que te parseado de la info que tienes en ese archivo. Saludos... 2012/4/27 G V nada...@gmail.com qué considerarias sospechoso? muchas conexiones a un mismo sitio? desde un mismo sitio? una secuencia? 2012/4/27 César García cel...@gmail.com: Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- Enviado desde mi dispositivo móvil ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- Luis M. Ibarra ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Lectura de archivos planos tipo logsurfer
A mi me servios la siguiente lectura: http://www.dabeaz.com/coroutines/ En especial: http://www.dabeaz.com/coroutines/follow.py que es un tail a la python... 2011/4/18 Esteban Dauksis este...@dauksis.com: Os lo reenvío, espero que ésta vez llegue a la lista. Saludos Hola, hace algún tiempo me embarqué en algo parecido algo que no te han comentado de momento es gestionar la rotación/truncado de archivos de log... lo mejor que encontré y que no recuerdo de dónde lo saqué es lo siguiente: # -*- coding: utf-8 -*- Module to allow for reading lines from a continuously-growing file (such as a system log). Handles log files that get rotated/trucated out from under us. Inspired by the Perl File::Tail module. Example: t = filetail.Tail(log.txt) while True: line = t.nextline() # do something with the line or: t = filetail.Tail(log.txt) for line in t: # do something pass from os import stat from os.path import abspath from stat import ST_SIZE from time import sleep, time class Tail(object): The Tail monitor object. def __init__(self, path, only_new = False, min_sleep = 1, sleep_interval = 1, max_sleep = 60): Initialize a tail monitor. path: filename to open only_new: By default, the tail monitor will start reading from the beginning of the file when first opened. Set only_new to True to have it skip to the end when it first opens, so that you only get the new additions that arrive after you start monitoring. min_sleep: Shortest interval in seconds to sleep when waiting for more input to arrive. Defaults to 1.0 second. sleep_interval: The tail monitor will dynamically recompute an appropriate sleep interval based on a sliding window of data arrival rate. You can set sleep_interval here to seed it initially if the default of 1.0 second doesn't work for you and you don't want to wait for it to converge. max_sleep: Maximum interval in seconds to sleep when waiting for more input to arrive. Also, if this many seconds have elapsed without getting any new data, the tail monitor will check to see if the log got truncated (rotated) and will quietly reopen itself if this was the case. Defaults to 60.0 seconds. # remember path to file in case I need to reopen self.path = abspath(path) self.f = open(self.path,r) self.min_sleep = min_sleep * 1.0 self.sleep_interval = sleep_interval * 1.0 self.max_sleep = max_sleep * 1.0 if only_new: # seek to current end of file file_len = stat(path)[ST_SIZE] self.f.seek(file_len) self.pos = self.f.tell() # where am I in the file? self.last_read = time() # when did I last get some data? self.queue = [] # queue of lines that are ready self.window = [] # sliding window for dynamically # adjusting the sleep_interval def _recompute_rate(self, n, start, stop): Internal function for recomputing the sleep interval. I get called with a number of lines that appeared between the start and stop times; this will get added to a sliding window, and I will recompute the average interarrival rate over the last window. self.window.append((n, start, stop)) purge_idx = -1 # index of the highest old record tot_n = 0 # total arrivals in the window tot_start = stop # earliest time in the window tot_stop = start # latest time in the window for i, record in enumerate(self.window): (i_n, i_start, i_stop) = record if i_stop start - self.max_sleep: # window size is based on self.max_sleep; this record has # fallen out of the window purge_idx = i else: tot_n += i_n if i_start tot_start: tot_start = i_start if i_stop tot_stop: tot_stop = i_stop if purge_idx = 0: # clean the old records out of the window (slide the window) self.window = self.window[purge_idx+1:] if tot_n 0: # recompute; stay within bounds self.sleep_interval = (tot_stop - tot_start) / tot_n if self.sleep_interval self.max_sleep: self.sleep_interval = self.max_sleep if self.sleep_interval self.min_sleep: self.sleep_interval = self.min_sleep def _fill_cache(self): Internal method for grabbing as much data out
Re: [Python-es] Leer encabezados de buzon imap
Tiene razon lasizoillo, si tienes muucho tiempo, puedes ir con twisted, si no prueba con las otras opciones 2010/5/7 Jordi Funollet jord...@ati.es Por lo que dices que vas a hacer, quizás te ahorres trabajo con 'imapfilter'. Aunque no es Python, sino Lua, es aún más simple que usar 'imaplib'. -- ## ### Jordi Funollet ### http://www.terraquis.net ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- http://celord.blogspot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Plugins para python en netbeans
A mi también me daba error, pero luego de presionar el botón que dice Reload Catalog, me instalo el plugin de C/C++, escogí este como prueba. Gracias El 7 de mayo de 2010 11:01, Roylan Suarez Reyes roylan04...@pri.jovenclub.cu escribió: El vie, 07-05-2010 a las 18:10 +0200, Isaac Peña Torres escribió: Hola, puedes instalar el plugin de Python directamente desde Netbeans en: Tools-Plugins-Available Plugins. El problema es que el sitio de Netbeans esta dando acceso denegado, al parecer despues que oracle tomó el mando... salu2 Saludos -- Isaac Peña Torres El 7 de mayo de 2010 16:06, Roylan Suarez Reyes roylan04...@pri.jovenclub.cu escribió: Hola Colegas Alguien me puede dar alguna url de donde descargar algun plugins python para el IDE Netbeans porque desde las paginas oficiales no de netbeans no se puede, al parecer Oracle tiene esos sitios parados... Salu2 ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing listpython...@python.orghttp://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- http://celord.blogspot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Procesar archivos de SYSLOG
que tal pyparsing ? veo que hasta tiene ejemplos de un archivo de log de apache http://pyparsing.wikispaces.com/ El día 12 de abril de 2010 13:48, Carlos Herrera Polo carlos.herrerap...@gmail.com escribió: Estimados: Pienso desarrollar un pequeño programa en python que procese un gran archivo de texto ASCII (200Mb aprox) el cual tiene varias lineas con informacion de URLs visitadas. Este archivo lo tengo en una PC Window$ que uso como Syslog y el firewall almacena ahi la informacion en linea. La idea es que pueda hacer un programa que ubique en cada linea (que terminan siempre con 000) un URL, y de ser asi, almacenar en una base de datos , se me ocurre Mysql lo siguiente: Fecha , hora, IP , y el dominio del URL, de manera que pueda luego, mediante consultas a esa base de datos, obtener informacion agrupada sobre paginas mas vistas, usuarios con mas trafico, etc. Ejemplo de archivo ASCII: 2010-04-12 11:15:13 Local0.Info 192.168.1.1 FW_UNO: NetScreen device_id=FW_REM [Root]system-information-00769: UF-MGR: URL PERMITTED: 192.168.1.41(1619)-68.142.101.11(80) sunmicro-6.vo.llnwd.net/u/esd6/jscdl/jre/6u17-b80/jre/jre-6u17-windows-i586-if CATEGORY: default REASON: BY_OTHER PROFILE: Acceso_Total (2010-04-12 11:14:36)000 2010-04-12 11:15:13 Local0.Notice 192.168.1.1 FW_REM: NetScreen device_id=FW_REM [Root]system-notification-00257(traffic): start_time=2010-04-12 11:14:23 duration=14 policy_id=27 service=http proto=6 src zone=Trust dst zone=Untrust action=Permit sent=1011 rcvd=1042 src=10.10.10.45 dst=204.160.104.126 src_port=1932 dst_port=80 src-xlated ip=200.62.154.89 port=15204 dst-xlated ip=204.160.104.126 port=80 session_id=45288 reason=Close - TCP RST000 2010-04-12 11:15:14 Local0.Info 192.168.1.1 FW_REM: NetScreen device_id=FW_REM [Root]system-information-00769: UF-MGR: URL PERMITTED: 192.168.1.45(1928)-208.89.14.135(80) sales.liveperson.net/hc/55170107/ CATEGORY: default REASON: BY_OTHER PROFILE: Acceso_Total (2010-04-12 11:14:37)000 Podrian por favor aconsejarme que modulos de Python deberia utilizar ? Se que Python tiene cientos de librerias, imagino que alguna debe poder identificar de una variable string, el URL, y luego el dominio... Mil gracias de antemano por las sugerencias. Saludos ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- http://celord.blogspot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] pinax
Yo no, pero si necesitas algo de introducción, en blip.tv existe un canal de pycan2010 donde hay varias presentaciones sobre pinax, talvez de algo te puedan servir El día 24 de marzo de 2010 03:23, Javier Santana qualo...@gmail.com escribió: Hola a todos, estoy valorando el uso de pinax para un proyecto, sin embargo al hacer los primers test he obtenido varios 500 con la página típica de error de django, que da bastante mala espina de entrada. Teneis alguno experiencias con pinax? un saludo. ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- http://celord.blogspot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
[Python-es] Problema con imap4 de twisted
Hola lista, tengo un cliente imap4 uso twisted todo funciona bien, mientras solo llegue 1 email entre cada loop, el cual lo tengo configurado que se ejecute cada 20 segundos, si llegan mas de 1 email la aplicación solo descarga el primero, dejando los otros como leidos, pero si procesar, me pregunto si alguien de la lista tiene experiencia con imap4 con twisted Acá el código: t Muchas Gracias ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Problema con imap4 de twisted
Que estraño, juraria que si puse el codigo :) aca va: http://www.pastebin.com/m4e387f1a #!/usr/bin/env python #coding=utf-8 Client de IMAP4 que descarga contenido del INBOX de una cuenta en especifico para luego extraer el numero de telefono que debe venir en los correos enviados import StringIO import sys from Config import retCredentials import messageParser from twisted.internet.task import LoopingCall from twisted.internet import protocol from twisted.internet import defer from twisted.mail import imap4 from twisted.python import util from twisted.python import log from twisted.internet import reactor debug = 0 class IMAP4Client(imap4.IMAP4Client): def serverGreeting(self,caps): Metodo llamado cuando el servidor contesta if debug: print On serverGreeting self.serverCapabilities = caps if self.greetDeferred is not None: d, self.greetDeferred = self.greetDeferred, None d.addCallback(self.cbLogin) d.callback(self) def cbLogin(self, proto): Callback to IMAP login if debug: print On Login login = self.login(self.factory.username, self.factory.password) login.addCallback(self.startPolling) def startPolling(self, proto): Callback to poll every x seconds call = LoopingCall(self.selectMailbox,mailbox=INBOX) call.start(20, now=True) def selectMailbox(self, mailbox): Select the mailbox to examin if debug: print On selectMailbox mailbox = self.factory.mailbox return self.select(mailbox).addCallback(self.cbSelectSuccess) def cbSelectSuccess(self, selected): Examine the INBOX mailbox for new mails if debug: print On cbSelectSuccess self.messageCount = selected['EXISTS'] print Messages: , self.messageCount unseen = selected['EXISTS'] - selected['RECENT'] if selected['RECENT'] == 0: print No new messages return return self.fetchBody(%s:* % (unseen,) ).addCallback(self.cbProcMessages) def cbProcMessages(self,messages): for message in messages.iteritems(): message[1]['RFC822.TEXT'] class IMAP4ClientFactory(protocol.ClientFactory): protocol = IMAP4Client def __init__(self, username, password, onConn): self.username = username self.password = password self.mailbox = 'INBOX' self.onConn = onConn def buildProtocol(self,addr): if debug: print On buildProtocol p = self.protocol() p.factory = self p.greetDeferred = self.onConn auth = imap4.CramMD5ClientAuthenticator(self.username) p.registerAuthenticator(auth) return p def clientConectionFailed(self, connector, reason): d, self.onConn = self.onConn, None d.errback(reason) def ebConnection(reason): log.startLogging(sys.stdout) log.err(reason) reactor.stop() PORT = 143 RESULT = INBOX def main(): credentials = retCredentials() hostname = credentials['server'] username = credentials['mailbox'] password = util.getPassword('IMAP4 Password: ') onConn = defer.Deferred( ).addErrback(ebConnection ) factory = IMAP4ClientFactory(username, password, onConn) reactor.connectTCP(hostname, PORT, factory) reactor.run() if __name__ == __main__: main() El día 22 de febrero de 2010 13:00, lasizoillo lasizoi...@gmail.com escribió: El día 22 de febrero de 2010 19:43, César García cel...@gmail.com escribió: Hola lista, tengo un cliente imap4 uso twisted todo funciona bien, mientras solo llegue 1 email entre cada loop, el cual lo tengo configurado que se ejecute cada 20 segundos, si llegan mas de 1 email la aplicación solo descarga el primero, dejando los otros como leidos, pero si procesar, me pregunto si alguien de la lista tiene experiencia con imap4 con twisted Acá el código: Yo tengo experiencia con el imap4 de twisted (aunque hace algún tiempo que no lo toco). La pregunta del millón es: ¿Dónde has dicho que está el código? Un saludo: Javi ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- http://celord.blogspot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] obtener el ip de la pc y su sistema operativo (sistemas remotos)
Para que puedas obtener el sistema operativo te recomiendo nmap Ej: nmap -sS -PN -n -O 192.168.1.10 El día 12 de febrero de 2010 16:27, David Villa dvi...@gmx.net escribió: On Fri, 12 Feb 2010 10:44:57 -0500 (EST) Boris Perez Canedo inf200...@ucf.edu.cu osó decir: Hola a todos, Me gustaria saber como realizar un scan de la red y de esta manera obtener los ip que estan siendo utilizados y el sistema operativo asociado. Se que se puede ejecutar el comando ping u otros para cosas similares desde python pero hacer esto, por ejemplo con ping, llevaria mucho tiempo, ya que habria que empezar a probar ip por ip y podrian haber 10 maquinas encendidas en 100 posibilidades o mas. Otra cosa seria una especie de ping a la direccion de broadcast de la subred y asi obtener respuestas instantaneas pero desgraciadamente el comando ping no funciona asi. Hay alguna implementacion del protocolo ICMP en python que permita hacer esto? Otras posibilidades que no sean con ICMP tambien son bienvenidas. Gracias. Yo tengo un scriptillo Python que usa la librería scapy y que quizá te puede servir. Lo que hace es un ping ARP, de modo que puedes tener la lista de todos los hosts conectados en la LAN en pocos segundos. Además utiliza el OUI de la MAC pasa listar el fabricante (esto lo puedes eliminar si no lo necesitas). Lo que no hace es darte el SO. Es importante señalar que cómo usa ARP solo sirve para máquinas que se encuentren en el mismo dominio de broadcast que tu máquina. Puedes encontrar el script en: https://arco.esi.uclm.es/svn/public/misc/scapy/arping.py Si no quieres filtrar lo puedes usar simplemente con: $ sudo ./arping.py Saludos ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- http://celord.blogspot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/