Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/01/2014, 21:25
Avatar de 23r9i0
23r9i0
 
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
leer multiples json, comprobar url, crear json

Hola
No estoy seguro si es el sitio correcto sino lo es disculpadme, pero va de python.
Os expongo el tema.
Tengo un directorio que tiene múltiples subdirectorios y que algunos tienen un archivo json.
Necesito leerlos y extraer el primer valor para luego comprobar que existe en el servidor, solo comprobarlo, y si existe añadir el contenido del archivo json en otro archivo json que tendra todos los json unificados.
Una vez creado el json tengo que crear otro json que contendra los valores ordenados por un valor.

Actualmente uso walk, fnmatch para crear una lista con todas las direcciones de los archivos y luego con un with open y for escribo el nuevo json, pero me pierdo al no saber como estraer el valor del archivo y comprobarlo.

Uso Python 2.7.5 linux y este es mi codigo
Código Python:
Ver original
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import os, fnmatch
  4.  
  5. m = []
  6.  
  7. for r, d, f in os.walk('directory'):
  8.     for p in fnmatch.filter(f, 'data.json'):
  9.         m.append(os.path.join(r, p))
  10. with open('list.json', 'w') as o:
  11.     o.write('[')
  12.     for (i,f) in enumerate(m):
  13.         o.write(''.join([l for l in open(f).readlines() if l.strip()]))
  14.         if i < (len(m)-1):
  15.             o.write(',')
  16.     o.write(']')

Hace muy poco que estoy con python asi que si creeis o sabeis otra manera de hacerlo os estaria agradecido de que compartieras tus conocimientos.
Gracias