Вопрос по parsing, nlp, python, time – Парсер времени на естественном языке

3

Я пытаюсь проанализировать строки, содержащие (на естественном языке) время, чтобыhh:mm объекты времени? Например:

"ten past five"
"quarter to three"
"half past noon"
"15 past 3"
"13:35"
"ten fourteen am"

Я посмотрел нахронический для Руби иискусный для Java (так же, как и для некоторых других библиотек), но обе, похоже, сосредоточены на разборе дат. Строки типа "десять минут пятого" неправильно анализируются.

Кто-нибудь знает библиотеку, которая соответствует моим потребностям? Или я должен начать работать над своим собственным парсером?

Ваш Ответ

3   ответа
3

Мне не хотелось продлевать время анализа, поэтому я решил использоватьpyPEGкаркас интерпретатора парсера для Python, чтобы написать специальный анализатор времени. Для тех, кто заинтересован,первая базовая версия теперь закончен и хорошо разбирает нидерландские строки времени.

2

https://gist.github.com/akatzbreaker/5849024

Этоsame как Bert's Anwser на Github, но это на английском ...Just for anyone who is interested on this, and doesn't know Dutch :-P ...

8

parsedatetime выглядит многообещающекредит.

+1, я думаю, это лучше соответствует потребностям Берта. Удаление моего ответа.
Увы, это все, что было возвращено при поиске ... Вы можете добавить к этому плагину или написать функцию-обертку с пользовательской логикой для этих случаев, если вы не можете найти какой-либо другой плагин.
parsedatetime делает некоторые вещи, которые мне нужны, но, похоже, он не анализирует строки, такие как «десять минут шестого», «без четверти три», «половина третьего» ... Bert

Похожие вопросы