Как преобразовать текст типа Оби в обычный текст при загрузке данных?

Когда я массово загружаю свои данные GAE, написанные на русском языке, я получаю текст вроде

u'Любимая акция верну\u043асс! Вресторанах Евразия""3 р\u043о u043f>>оце==1""! С 9 по 12 сентября! Тоько эти 4 дня! >> evrasia.spb.ru, 88005050145 и 008'

Используется следующий bulkloader:

transformers:
- kind: MyKind
  connector: csv
  connector_options:
  property_map:
    - property: texts
      external_name: texts

Что я должен сделать, чтобы он уже был расшифрован?

Обновление. Я попытался сделать следующее.

python_preamble:
- import: codecs
...
    - property: texts
      external_name: texts
      export_transform: codecs.decode('unicode_escape')

но получаю ошибку:

Unable to assign value 'codecs.decode('unicode_escape')' to attribute 'export_transform':
Code for export_transform did not return a callable.  Code: "codecs.decode('unicode_escape')".
  in "bulkloader.yaml", line 22, column 25

Каким-то образом документация по массовой загрузке была удалена с сайта Google, поэтому я не знаю, где можно прочитать об использовании export_transform.


person LA_    schedule 16.12.2014    source источник
comment
Вы смотрели на этот похожий вопрос: stackoverflow.com/questions/6504200/?   -  person EdChum    schedule 16.12.2014
comment
Спасибо, @EdChum. Позвольте мне исследовать, как применить это для загрузчика GAE.   -  person LA_    schedule 16.12.2014


Ответы (1)


Ничего не зная о GAE и его работе, у меня есть некоторые мысли по этому поводу, которые могут помочь вам, а могут и не помочь:

  • Если вы попытаетесь напечатать строку (например: print the_string) и она будет написана как вещь в вашем вопросе, вы можете использовать eval (например: print eval(the_string)). Или, если вы просто хотите превратить его в объект Unicode, используйте: the_string=eval(the_string).
  • Глядя на ваше сообщение об ошибке "... export_transform не вернул вызываемый..." и фактическое имя "export_transform", я бы предположил, что export_transform должен быть вызываемой функция-преобразования. Попробуйте определить его извне или используйте lambda-функцию.

Надеюсь, это поможет вам...

person UlfR    schedule 17.12.2014