API словаря или библиотека [закрыто]
-
03-07-2019 - |
Вопрос
Кто-нибудь знает хороший словарный API или библиотеку Ruby для поиска определений слов?
Я думаю, это должно работать примерно так:
- Я вызываю get_definition(word)
- Он возвращает определение этого слова (в идеале, чтобы его можно было легко отформатировать для отображения.
Спасибо
Решение
Руби-WordNet похоже, он делает то, что вы ищете:
Ruby-Wordnet-это интерфейс Ruby для лексической базы данных Wordnet®.Wordnet - это онлайн -лексическая справочная система, дизайн которой вдохновлен текущими психолингвистическими теориями лексической памяти человека.Английские существительные, глаголы, прилагательные и наречия организованы в наборы синонимов, каждый из которых представляет собой одну лежащую лексическую концепцию.Различные отношения связывают наборы синонимов.
Другие советы
Wordnik.com имеет несколько API-интерфейсов информации о словах, включая API определений.Дополнительная информация здесь: http://developer.wordnik.com/
[Я работаю в Wordnik.Скоро у нас будет больше API, дайте нам знать, что вы хотите!]
Вчера я обнаружил для этого веб-сервис.
Перейти к британский консул домашнюю страницу и дважды щелкните любое слово (которое еще не является гиперссылкой).
Должно открыться всплывающее окно с определением из Кембриджского словаря.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');
}
}
есть также оболочки для API словаря.com (которому уже несколько лет)
http://rubyforge.org/snippet/detail.php?type=snippet&id=53
http://rubyforge.org/snippet/detail.php?type=snippet&id=52
и викисловарь
http://eightpence.com/ninjawords-a-fast-online-dictionary-fast-like-a-ninja/