Спасите!
Есть парсер на питоне, есть файл в кодировке UTF-8.
Когда читаю файл с диска, парсер его нормально жует:
import codecs
txt = codecs.open('file.txt', 'r', encoding='utf-8').read()
result = parse(txt) # OK!
Когда этот же файл вставляю в форму textarea и отправляю на сервер через POST, то парсер перестает работать. В частности он уже не может найти символ переноса строки
txt = request.POST.get('txt')
result = parse(txt) # Облом! Не находит '\n'!
В парсере есть поиск по регуляркам и поиск по src.startswith()
if src.startswith('\n'):
...
Вообще интересует вопрос, где что в какой кодировке бродит? На сервере Django.
По идее при отправке через форму все преобразуется в urlencode, но потом после приема все должно назад приводиться к UTF-8, что подтверждается выводом данных из POST обратно в шаблон. Т.е. в textarea выводится все тот же файл, все с теми же переносами... Но парсер почему-то уже так не считает :(