I am trying to create a json file from an input xml file using xmltodict with the following code
import io, xmltodict, json
infile = io.open(filename_xml, 'r')
outfile = io.open(filename_json, 'w')
o = xmltodict.parse( infile.read() )
json.dump( o , outfile )
the last line get me the following error
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.py", line 182, in dump
fp.write(chunk)
TypeError: must be unicode, not str
I guess I need to change the encoding. My initial xml file seems to be ascii. Any idea on how to make this work? Thanks
You can open the file in binary mode
outfile = io.open(filename_json, 'wb')
This will allow str as well.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With