Skip to main content

Назначение

Пакет нужен чтобы чинить “кракозябры” (или “краказябры”) в читаемый текст. Например: “õîğîøèé òåêñò” => “хооший текст”.

Установка

$ git clone https://bitbucket.org/dkuryakin/recoder.git
$ cd recoder && python setup.py install

или

$ pip install recoder

Полезные команды

Использование как консольная тулза.

$ echo "Îñíîâíàÿ Îëèìïèéñêàÿ äåðåâíÿ â" | python -mrecoder [coding]

По умолчанию, coding=utf-8.

Использование в коде

Чаще всего с кракозябрами справится такой базовый пример:

from recoder.cyrillic import Recoder
rec = Recoder()
broken_text = u'Îñíîâíàÿ Îëèìïèéñêàÿ äåðåâíÿ â'
fixed_text = rec.fix_common(broken_text)
print fixed_text.encode('utf-8')

Если базовый пример не справился, можно поиграться с настройками:

from recoder.cyrillic import Recoder
rec = Recoder(depth=4)
broken_text = u'...'
fixed_text = rec.fix(broken_text)  # fix работает дольше и сложнее чем fix_common
...

Можно использовать частоупотребимые слова (и, на, к, в, …) как индикатор успеха перекодировки. Но в этом случае текст починится только если в нём есть эти слова:

from recoder.cyrillic import Recoder
rec = Recoder(use_plus_words=True)
...

Замечания

В данный момент поддерживается только кириллица.

Расширение

Если хочется расширить библиотеку не только кириллицей, предусмотренна удобная тулза:

$ cat some_learning_text.txt | python -mrecoder.builder [coding]

По-умолчанию, coding=utf-8. На stdin подавать текстовку для обучения. На выходе получится 2 файлика: 3grams.json и plus_words.json. Далее всё делается по аналогии с recoder.cyrillic.

Тесты

Тут всё просто:

$ git clone https://bitbucket.org/dkuryakin/recoder.git
$ cd recoder && python setup.py test

Changelog

v0.1.0
  • Реалиизация базовой функциональности.

v0.2.0
  • Добавлние декодеров. Теперь умеет декодить такие кракозябры (взял примеры на 2cyr.com):

    • èðèëèöà

    • %D0%A2%D0%BE%D0%B2%D0%B0+%D0%B5+%D0%BA

    • åäíà ãîäè

    • ирилица

v0.3.0
  • Добавлена поддержка python3.

v0.3.1
  • Удаление из зависимостей пакета regex.

  • Минорные фиксы.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

recoder-0.3.1.tar.gz (96.8 kB view details)

Uploaded Source

File details

Details for the file recoder-0.3.1.tar.gz.

File metadata

  • Download URL: recoder-0.3.1.tar.gz
  • Upload date:
  • Size: 96.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for recoder-0.3.1.tar.gz
Algorithm Hash digest
SHA256 b56f0f5d86997288b2da11b44c6e855ea4977a848990252528f63fa03dd2cdb4
MD5 dc856f52760583e28a5d6a7bf30ece62
BLAKE2b-256 3aa7d759e65694e9206a843c437d0d8c9fae4d9c7d613fd91f79e09c68e3d357

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.3.1 This release

1 file

0.3.0

1 file

0.2.0

1 file

0.1.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page