Re: [Python-es] [Py-MAD] ¿Foro integrable en django?

2018-12-10 Por tema César García Tapia
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?

2018-12-09 Por tema César García Tapia
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?

2018-12-09 Por tema César García Tapia
¡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

2018-03-31 Por tema César García Tapia
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.

2017-07-05 Por tema César García Tapia
¿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

2017-04-04 Por tema César García Tapia
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

2017-02-28 Por tema César García Tapia
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

2015-12-07 Por tema César García Tapia
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"

2015-12-06 Por tema César García Tapia
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

2015-11-30 Por tema César García Tapia
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.

2015-11-24 Por tema César García Tapia
¡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

2012-04-28 Por tema César García
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

2012-04-27 Por tema César García
   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

2012-04-27 Por tema César García
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

2012-04-27 Por tema César García
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

2011-04-18 Por tema César García
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

2010-05-07 Por tema César García
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

2010-05-07 Por tema César García
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

2010-04-12 Por tema César García
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

2010-03-24 Por tema César García
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

2010-02-22 Por tema César García
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

2010-02-22 Por tema César García
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)

2010-02-14 Por tema César García
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/