Как можно использовать API Викисловаря, чтобы определить, существует ли слово?Как получить содержимое словаря Викисловаря?
ответ
Wiktionary API можно использовать для запроса, существует ли какое-либо слово.
Примеры существующих и несуществующих страниц:
http://en.wiktionary.org/w/api.php?action=query&titles=test
http://en.wiktionary.org/w/api.php?action=query&titles=testx
Первая ссылка приводятся примеры на другие типы форматов, которые могут быть легче разобрать.
Для получения данных этого слова в малом формате XHTML (должен больше, чем требуется существование), запросить печатную версию страницы:
http://en.wiktionary.org/w/index.php?title=test&printable=yes
http://en.wiktionary.org/w/index.php?title=testx&printable=yes
Они могут затем быть анализируется любым стандартным синтаксическим анализатором XML.
Thanks; сам API не тот, на что я надеялся, но ссылка, которую вы предоставили, - это то, что я искал. – Armentage
Теперь он принимает дополнительный параметр формата для другого, кроме XML-вывода, например: https://en.wiktionary.org/w/api.php?action=query&titles=test&format=json – eenagy
Не может работать так, как вы ожидаете, хотя https: // ru.wiktionary.org/wiki/Category:English_misspellings https://en.wiktionary.org/wiki/amatuer – endolith
Есть несколько предостережений в просто проверить, что Wiktionary имеет страницу с именем, которое вы ищете:
Caveat # 1: Все викисловарях включая английский Wiktionary на самом деле цели, включая каждое слово в каждый язык, так что если вы просто используете выше API позвонить вы будете знать, что слово вы спрашиваете это слово, по крайней мере на одном языке, но не обязательно английский: http://en.wiktionary.org/w/api.php?action=query&titles=dicare
Caveat # 2: Возможно перенаправление существует от одного слова к другому. Это может быть из альтернативной орфографии, но это может быть от какой-либо ошибки. Вызов API выше, не будет различать между переадресацией и статьями: http://en.wiktionary.org/w/api.php?action=query&titles=profilemetry
Caveat # 3: Некоторые викисловарь включая английский Wiktionary включают "общие опечатки": http://en.wiktionary.org/w/api.php?action=query&titles=fourty
Caveat # 4: Некоторые викисловарь разрешить записи заглушек, которые не имеют или почти не содержат информации о терминах. Это обычно было распространено на нескольких викторинах, но не на английском Викисловарь. Но, похоже, теперь распространяется также на английском Wiktionary: https://en.wiktionary.org/wiki/%E6%99%B6%E7%90%83 (Permalink, когда заполняется окурок так что вы можете увидеть, что заглушка выглядит следующим образом: https://en.wiktionary.org/w/index.php?title=%E6%99%B6%E7%90%83&oldid=39757161)
Если они не включены в то, что вы хотите, вы придется загружать и анализировать сам wikitext, что не является тривиальной задачей.
То, что я действительно хотел сделать, это взять полную свалку данных на одном из неанглийских сайтов Викисловаря и затем превратите содержимое в то, что я могу использовать локально. Сейчас кажется глупым, но я надеялся, что могу запросить список всех слов, а затем по мере необходимости вытаскивать их переходы/переводы по мере необходимости. – Armentage
Исправление к Caveat # 2 просто: добавьте '& prop = info' в запрос и проверьте ответ для атрибута redirect. – svick
@svick: Да, это правда # 2 проще обойти при использовании API, но эти основные предостережения также охватывают попытку проанализировать файлы [dump.wikimedia.org/enwiktionary/], хотя этот вопрос не спрашивает об этом подходе. – hippietrail
Возможно, вы захотите попробовать JWKTL. Я только что узнал об этом;)
http://en.wikipedia.org/wiki/Ubiquitous_Knowledge_Processing_Lab#Wiktionary_API
Ссылка, на которую вы ссылаетесь, сломана. Вот ссылка на страницу JWKTL http://www.ukp.tu-darmstadt.de/software/jwktl/. На самом деле я не верю, что OP ищет. – djskinner
Вы можете скачать дамп Wikitionary data. В FAQ есть дополнительная информация. Для ваших целей definitions dump, вероятно, лучший выбор, чем дамп xml.
Эти файлы дампа массивные, и непонятно, какие из них скачать (все они?). Вероятно, не то, что большинство людей ищут, они просто хотят программно найти несколько слов. – Cerin
Я объясню, какой файл загрузить - то есть определения dump (каталог из моей ссылки - это разные версии одного и того же файла), и да, если вы программно хотите искать слова, это идеально. Если вы можете гарантировать, что программа будет выполняться только онлайн, есть и другие варианты, но тем не менее я отвечаю на эту часть оригинального вопроса: «В качестве альтернативы, есть ли способ, по которой я могу вытащить словарные данные, которые поддерживают Викисловарь?» – kybernetikos
Определения dump link больше не доступны. –
Чтобы сохранить его очень просто, извлекать слова из дампа, как, что:
bzcat pages-articles.xml.bz2 | grep '<title>[^[:space:][:punct:]]*</title>' | sed 's:.*<title>\(.*\)</title>.*:\1:' > words
Как получить копию pages-articles.xml.bz2? – Armentage
Это просто общее имя, которое я использовал для описания дампов формы «LANGwiktionary-DATE-pages-articles.xml.bz2». Перейдите в [link] (http://dumps.wikimedia.org/backup-index.html), затем нажмите «LANGwiktionary» (LANG, например, «en», «de» ...). – benroth
- 1. Как написать содержимое словаря MessageBox
- 2. Ошибки сборки при импорте Викисловаря
- 3. Как скачать категорию слов из Викисловаря?
- 4. Как получить индекс словаря из массива словаря?
- 5. Как получить источник словаря?
- 6. Как получить значение словаря
- 7. Как получить значение из словаря
- 8. Как получить значение внутреннего словаря?
- 9. HttpResponse не удалось распечатать содержимое словаря
- 10. Получить ключ словаря, используя значение словаря
- 11. Как получить содержимое тега?
- 12. Как получить содержимое System.Net.Mail.Attachment
- 13. Как получить содержимое $ _GET
- 14. Как получить содержимое iframe?
- 15. Как получить содержимое тега?
- 16. Получение точного синонима или антонимов с использованием Викисловаря API
- 17. Как получить содержимое html, включая содержимое javascript?
- 18. Как отобразить содержимое словаря в морфинге в smalltalk?
- 19. Как получить значение элемента из словаря при выполнении выражения словаря?
- 20. Python: Как получить доступ к значениям кортежа внутри словаря словаря
- 21. Как получить доступ к значениям словаря словаря в iphone
- 22. Получить значение словаря Python
- 23. Получить предыдущий элемент словаря
- 24. Как сбросить содержимое словаря в UITextView или UILabel?
- 25. Получить AnyObject от словаря
- 26. Получить значение из словаря
- 27. Получить подмножество словаря Python
- 28. Как получить содержимое файла tbz?
- 29. Как получить содержимое внутри alt?
- 30. Как получить содержимое вложений файла
Любой, кто читал документацию увидит, что API не содержит далеко не достаточно функциональности, чтобы «восстановить содержание слова Викисловарь». Я бы оценил, что это примерно на 1% пути. Вы можете получить исходный синтаксис wiki или проанализированный HTML, и оттуда вы должны сделать все сами. Сказав, что может быть очень новый экспериментальный API, который работает только на английском Викисловарь. – hippietrail