natasha / corus

Links to Russian corpora + Python functions for loading and parsing
MIT License
277 stars 20 forks source link

Lenta.Ru Dataset v1.1 support #58

Closed accplan closed 3 years ago

accplan commented 3 years ago

Добавил поддержку датасета Ленты ру версии 1.1 https://github.com/yutkin/Lenta.Ru-News-Dataset/releases/tag/v1.1 По сравнению с 1.0 они добавили колонку "Дата публикации" и запаковали в архив bz2 вместо gz. Функция load_lenta теперь поддерживает и 1.0, и 1.1, а также распакованный CSV

kuk commented 3 years ago

Спасибо за патч!

  1. Что если в path будет "LENTA.GZ" или "/tmp/xtm_abd". Я бы оставил load_lenta без изменений, добавил бы load_lenta2 где вместо gz работа с bz
  2. date всегда None, если уже добавлять то целиком
  3. Надо обновить README, коротко процедура https://github.com/natasha/corus#development. Добавить ссылку на новый архив.

Если нужно быстрое решение просто

from corus... import load_bz2_lines, parse_lenta

lines = load_bz2_lines(path)
parse_lenta(lines)
...
accplan commented 3 years ago
  1. хмм может лучше передавать в load_lenta параметром archive_type="bz2|gz"?
  2. не понимаю, что это значит. Добавить отдельный класс, где будет поле date, а оригинальный класс не менять?
kuk commented 3 years ago
  1. А вдруг он опечатается, напишет "bz" вместо "bz2", это надо проверять. С load_lenta2 и автокомплит работает
  2. Нужно дописать код в parse_lenta. Возможно лучше сделать отдельную parse_lenta2, общий код вынести в parselenta
accplan commented 3 years ago

окей, понятно, посмотрю сегодня попозже

accplan commented 3 years ago

такс, вроде всё

kuk commented 3 years ago
  1. Я имел в виду, что надо парсить дату (strptime)
  2. В README load_lenta и load_lenta2 лучше сгруппировать Я это сам поправлю, посмотрите. Спасибо за патч!
kuk commented 3 years ago

https://github.com/natasha/corus/blob/61a4776f5e534469bb9df1e451b6a6d5fc0e991b/corus/sources/lenta.py

accplan commented 3 years ago

аа вот как, совсем всё неправильно понял) Ну ладно, будем надеяться, что в следующей версии они формат не поменяют и не придётся load_lenta3 добавлять)