Como a API do Wikcionário pode ser usada para determinar se uma palavra existe ou não?
api
dictionary
mediawiki-api
wiktionary
Armentage
fonte
fonte
Respostas:
A API do Wikcionário pode ser usada para consultar se uma palavra existe ou não.
Exemplos para páginas existentes e não existentes:
O primeiro link fornece exemplos de outros tipos de formatos que podem ser mais fáceis de analisar.
Para recuperar os dados da palavra em um formato XHTML pequeno (caso seja necessário mais do que a existência), solicite a versão para impressão da página:
Eles podem então ser analisados com qualquer analisador XML padrão.
fonte
https://en.wiktionary.org/w/?curid=[page_id]&printable=yes
:, para redirecionar para a página XHTML usandopageid
.Existem algumas ressalvas em apenas verificar se o Wikcionário tem uma página com o nome que você está procurando:
Advertência # 1 : Todos os Wikcionários, incluindo o Wikcionário em Inglês, na verdade têm o objetivo de incluir todas as palavras em todos os idiomas, então se você simplesmente usar a chamada de API acima, você saberá que a palavra que está perguntando é uma palavra em pelo menos um idioma, mas não necessariamente em inglês: http://en.wiktionary.org/w/api.php?action=query&titles=dicare
Advertência # 2 : talvez exista um redirecionamento de uma palavra para outra. Pode ser de uma grafia alternativa, mas pode ser de algum tipo de erro. A chamada API acima não diferencia entre um redirecionamento e um artigo: http://en.wiktionary.org/w/api.php?action=query&titles=profilemetry
Advertência nº 3 : Alguns Wikcionários, incluindo o Inglês, incluem "erros ortográficos comuns": http://en.wiktionary.org/w/api.php?action=query&titles=fourty
Advertência # 4 : Alguns Wikcionários permitem entradas de stub com pouca ou nenhuma informação sobre o termo. Isso costumava ser comum em vários Wikcionários, mas não no Wikcionário Inglês. Mas parece que agora se espalhou também para o Wikcionário em inglês: https://en.wiktionary.org/wiki/%E6%99%B6%E7%90%83 ( link permanente para quando o esboço estiver preenchido para que você ainda possa ver como é um esboço: https://en.wiktionary.org/w/index.php?title=%E6%99%B6%E7%90%83&oldid=39757161 )
Se eles não estiverem incluídos no que você deseja, você terá que carregar e analisar o próprio wikitexto, o que não é uma tarefa trivial.
fonte
&prop=info
à consulta e verifique a resposta para oredirect
atributo.Você pode baixar um dump de dados do Wikcionário . Há mais informações no FAQ . Para seus propósitos, o despejo de definições é provavelmente uma escolha melhor do que o despejo xml.
fonte
Para mantê-lo realmente simples, extraia as palavras do dump assim:
fonte
LANGwiktionary-DATE-pages-articles.xml.bz2
. Acesse o link e clique emLANGwiktionary
(LANG, por exemplo, 'en', 'de' ...).Se estiver usando Python, você pode usar o WiktionaryParser de Suyash Behera.
Você pode instalá-lo por
Exemplo de uso:
fonte
Você pode querer experimentar o JWKTL. Acabei de descobrir;)
http://en.wikipedia.org/wiki/Ubiquitous_Knowledge_Processing_Lab#Wiktionary_API
http://www.ukp.tu-darmstadt.de/software/jwktl/
fonte
Como mencionado anteriormente, o problema com essa abordagem é que o Wikcionário fornece informações sobre todas as palavras de todas as línguas . Portanto, a abordagem para verificar se existe uma página usando a API da Wikipedia não funcionará porque há muitas páginas para palavras que não estão em inglês. Para superar isso, você precisa analisar cada página para descobrir se há uma seção que descreve a palavra em inglês . Analisar o wikitexto não é uma tarefa trivial, embora no seu caso não seja tão ruim. Para cobrir quase todos os casos, você precisa apenas verificar se o wikitexto contém
English
título. Dependendo da linguagem de programação que você usa, você pode encontrar algumas ferramentas para construir AST a partir do wikitexto. Isso cobrirá a maioria dos casos, mas não todos, porque o Wikcionário inclui alguns erros de ortografia comuns.Como alternativa, você pode tentar usar o Lingua Robot ou algo semelhante. Lingua Robot analisa o conteúdo do Wikcionário e o fornece como uma API REST. A resposta não vazia significa que a palavra existe. Observe que, ao contrário do Wikcionário, a API em si não inclui erros de ortografia (pelo menos no momento em que escrevo esta resposta). Observe também que o Wikcionário contém não apenas as palavras, mas também expressões com várias palavras.
fonte
Aqui está um começo para analisar dados de etimologia e pronúncia:
Atualização : Aqui está uma essência com mais detalhes.
fonte
langs
?langs
tem alguns milhares de linhas, grande demais para SO.Você pode usar a API de revisões:
https://en.wiktionary.org/w/api.php?action=query&prop=revisions&titles=test&rvslots=*&rvprop=content&formatversion=2
ou a API Parse:
https://en.wiktionary.org/w/api.php?action=parse&page=test&prop=wikitext&formatversion=2
Mais exemplos são fornecidos nos documentos .
fonte