Я знаю, что были опубликованы похожие вопросы, но я думаю, что проблема, с которой я столкнулся, немного отличается от них. Пожалуйста, потерпите меня; Я только начал использовать Python 4 месяца назад, и я уверен, что моя незрелость показывает!
Я пишу программу, которая отображает данные LinkedIn из CSV-файла, используя плагин Protovis в дендрограмме. Насколько я вижу, плагин настроен правильно, и все это основано на O'Reilly's Mining the Social Web. Однако когда я запускаю свой код в IDLE, я получаю следующее сообщение об ошибке:
Traceback (most recent call last):
File "C:/Users/Envy 15/Desktop/MASIDendo", line 115, in <module>
html = open(HTML_TEMPLATE).read() % (json.dumps(json_output),)
File "C:\Python27\lib\json\__init__.py", line 231, in dumps
return _default_encoder.encode(obj)
File "C:\Python27\lib\json\encoder.py", line 201, in encode
chunks = self.iterencode(o, _one_shot=True)
File "C:\Python27\lib\json\encoder.py", line 264, in iterencode
return _iterencode(o, 0)
UnicodeDecodeError: 'utf8' codec can't decode byte 0x96 in position 17: invalid start `byte`
Теперь, насколько я понимаю, причина ошибки Unicode заключается в том, что в одном из моих имен файлов есть не-Unicode символ, однако я проверил их, но это не так. Часть моего кода, на которую он указывает:
html = open(HTML_TEMPLATE).read() % (json.dumps(json_output),)
f = open(os.path.join(os.getcwd(), 'out', OUT), 'w')
f.write(html)
f.close()
print 'Data file written to: %s' % f.name
# Open up the web page in your browser
webbrowser.open('file://' + f.name)
Любая помощь с этим будет высоко ценится!