[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