Подтвердить что ты не робот

Словарь API или библиотека

Кто-нибудь знает о хорошем словаре API или рубиновой библиотеке для поиска определений слов?

Я думаю, что это должно работать примерно так:

  • Я вызываю get_definition (word)
  • Он возвращает определение для этого слова (в идеале в некотором роде легко форматировать определение для отображения.

Спасибо

4b9b3361

Ответ 1

Ruby-WordNet звучит так, как будто он делает то, что вы ищете:

Ruby-WordNet - это интерфейс Ruby для Лексическая база данных WordNet®. WordNet это онлайн-лексическая система ссылок дизайн которого вдохновлен психолингвистические теории человека лексической памяти. Английские существительные, глаголы, прилагательные и наречия организованы в синонимы, каждый из которых представляет одна лежащая в основе лексическая концепция. Различные отношения связывают синоним множества.

Ответ 2

В Wordnik.com есть несколько API-интерфейсов, включая API определений. Больше информации здесь: http://developer.wordnik.com/

[Я работаю для Wordnik. Скоро у нас будет больше API, сообщите нам, что вы хотите!]

Ответ 3

Я обнаружил веб-сервис для этого вчера.

Перейдите на главную страницу Британский совет и дважды щелкните по любому слову (это еще не гиперссылка).

Это должно открыть всплывающее окно с определением Cambridge Dictionary. API относительно прост (и это открытый API, я вчера его проверил):

http://dictionary.cambridge.org/learnenglish/results.asp?searchword=SEARCH_PHRASE&dict=L

Для справки, здесь код, который они используют для запуска этого при двойном щелчке:

/* BC double-click pop-up dictionary */
var NS = (navigator.appName == "Netscape" || navigator.product == 'Gecko') ? 1 : 0;
if (NS) document.captureEvents(Event.DBLCLICK);
document.ondblclick = dict;
var dictvar;

function dict() {
    if (NS) {
        t = document.getSelection();
        pass_to_dictionary(t);
    } else {
        t = document.selection.createRange();
        if(document.selection.type == 'Text' && t.text != '') {
            document.selection.empty();
            pass_to_dictionary(t.text);
        }
    }
}

function pass_to_dictionary(text) {
    //alert(text);
    if (text > '') {
        window.open('http://dictionary.cambridge.org/learnenglish/results.asp?searchword='+text+ '&dict=L', 'dict_win', 'width=650,height=400,resizable=yes,scrollbars=yes');
    }
}