Ich versuche, eine Avro basierend auf einem vorhandenen Schema zu erstellen, aber ich erhalte einen Fehler bei der Verwendung der Syntax aus dem Tutorial here. Die Konsole sagt, dass das 'Bytes' -Objekt kein Attribut 'to_json' hat, aber tief in der Avro-Bibliothek. Gibt es gute Problemumgehungen oder Möglichkeiten, diesen Fehler zu beheben?Avro Writer in Python 3.5
Voll Fehler:
Traceback (most recent call last):
File "build_data.py", line 15, in <module>
al.create_avro(logs)
File "AppLog.py", line 57, in create_avro
writer = DataFileWriter(open("new.avro", "wb"), DatumWriter(), schema)
File "/usr/local/lib/python3.5/dist-packages/avro_python3-1.8.1-py3.5.egg/avro/datafile.py", line 151, in __init__
self.SetMeta('avro.schema', str(writer_schema).encode('utf-8'))
File "/usr/local/lib/python3.5/dist-packages/avro_python3-1.8.1-py3.5.egg/avro/schema.py", line 266, in __str__
return json.dumps(self.to_json())
File "/usr/local/lib/python3.5/dist-packages/avro_python3-1.8.1-py3.5.egg/avro/schema.py", line 808, in to_json
to_dump['items'] = item_schema.to_json(names)
AttributeError: 'bytes' object has no attribute 'to_json'
Code:
schema = avro.schema.ArraySchema(open("AppLogs.avsc", "rb").read())
writer = DataFileWriter(open("new.avro", "wb"), DatumWriter(), schema)
Vielen Dank für Ihre Hilfe.