Tomé esta secuencia de comandos desde here:CSV para la escritura JSON
import csv
from itertools import izip
f = open('/django/sw2/wkw2/csvtest1.csv', 'r')
reader = csv.reader(f)
keys = ("firm_url", "firm_name", "first", "last", "school", "year_graduated")
out = []
for property in reader:
property = iter(property)
data = {}
for key in keys:
data[ key ] = property.next()
out += [ data ]
print out
Cuando lo probé en IDLE Tengo el error
Traceback (most recent call last):
File "<pyshell#13>", line 5, in <module>
data [key] = property.next()
StopIteration
Pero trató
print out
una y otra entonces imprimió
[{'school': 'The George Washington University Law School', 'last': 'Abbas', 'firm_url': 'http://www.whitecase.com/aabbas', 'year_graduated': ' 2005', 'firm_name': 'White & Case', 'first': ' Amr A '}, {'school': 'Ernst Moritz Arndt University Greifswald', 'last': 'Adam', 'firm_url': 'http://www.whitecase.com/kadam', 'year_graduated': ' 2004', 'firm_name': 'White & Case', 'first': ' Karin '}, {'school': 'Tashkent State Law Institute', 'last': 'Adjivefayev', 'firm_url': 'http://www.whitecase.com/vadjivefayev', 'year_graduated': ' 2002', 'firm_name': 'White & Case', 'first': ' Vilen '}]
Pero cuando intento ejecutarlo como un script, no funciona, obtengo el mismo mensaje de error.
¿Alguien puede ayudar a reparar el error?
(y es que la salida de JSON válida?)
Gracias
Editar
gracias por las respuestas. Parece que esta no es la forma correcta de convertir un archivo csv a formato json. Solo intento convertir el archivo csv con datos para poder usar loaddata
para llenar mi base de datos sqlite3 en django. Vea este hilo en el grupo django: http://groups.google.com/group/django-users/browse_frm/thread/a00b529ba2147d91 para mi intento de usar el fragmento csv2json.py. Y otro hilo hoy en OS (lo siento, no puedo incluir 2 enlaces). Apreciaría una forma simple de convertir csv a json. O el método que usas para llenar tu base de datos django que debería usar en su lugar. Gracias por la ayuda.
La otra hebra de OS: http://stackoverflow.com/questions/1882469/how-do-i-transfer-data- in-csv-file-in-my-sqlite-database-in-django/1882533 # 1882533 – Zeynel