[pyar] DSL para filtros de secuencias de objetos

Gonzalo García gonzalogarcia243 en gmail.com
Mar Jun 12 11:18:09 -03 2018


Yo usé jsonpath-rw[1] y jsonpath-rw-ext[2] que son muy específicos de JSON, no conozco si puede ser aplicado a todos los objetos en general.

[1] https://pypi.org/project/jsonpath-rw/
[2] https://pypi.org/project/jsonpath-rw-ext/

Saludos!
Gonzalo G.
PGP: 0x3AFF5246
Fingerprint: B74F 7A86 A043 BD30 2022 E855 3F13 238E 3AFF 5246

> On 12 Jun 2018, at 09:26, Martín Gaitán <gaitan en gmail.com> wrote:
> 
> Buenas. 
> 
> Estoy buscando alguna una libreria que provea algun DSL para definir filtros  sobre estructuras de datos complejas, 
> 
> Por ejemplo, imaginen una lista de diccionarios 
> 
> events = [
>     {
>         'id': 1,
>         'system_id': 'XYZ',
>         'event_type': 'UserLogin',
>         'user': {
>             'username': 'messi'
>         }
>    }, {
>         'id': 2,
>         'system_id': 'XYZ',
>         'event_type': 'UserLogout',
>         'user': {
>             'username': 'messi'
>         }
>    }, {
>         'id': 3,
>         'system_id': 'FOO',
>         'event_type': 'UserLogin',
>         'user': {
>             'username': 'tin'
>         }
>     }
> ]
> 
> Entonces aplicar el filtro 
> "user.username = saibot  and event_type = UserLogout "   
> 
> sólo deberia matchear el diccionario del medio. 
> 
> Por ejemplo, esto está muy bien resuelto en django, pero yo necesito algo que aplique sobre diccionarios u objetos cualquiera
> https://github.com/ivelum/djangoql <https://github.com/ivelum/djangoql>
> 
> Encontré esto, que casi satisface mis requerimiento pero me queda chico, porque no soporta objetos anidados agrupamiento de condiciones. 
> https://git.ercpe.de/ercpe/phylter/src/branch/master <https://git.ercpe.de/ercpe/phylter/src/branch/master>
> 
> conocen algo que me pueda servir?
> saludos. 
> 
> _______________________________________________
> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
> Sitio web: http://www.python.org.ar/
> 
> Para administrar la lista (o desuscribirse) entrar a http://listas.python.org.ar/listinfo/pyar
> 
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20180612/94b44e5e/attachment.html>


Más información sobre la lista de distribución pyar