首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Wiktionary API获取发音数据?

如何使用Wiktionary API获取发音数据?
EN

Stack Overflow用户
提问于 2011-03-21 21:19:28
回答 3查看 5.4K关注 0票数 9

我正在寻找一种方法,通过查询某种API来获得任何给定单词的发音。当Wiktionary可以很方便地找到单词的发音时,我试着使用他们的API,但是我如何获得特定单词的发音呢?

他们的API似乎只允许获取完整的Wiki文章。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-04-19 08:48:19

Wiktionary没有自己的API。维基词典运行的软件MediaWiki确实有一个应用程序接口,但它完全不知道维基词典的结构和内容。

你能做的最好的事情就是使用MediaWiki API找到你想要的单词的维基页面,然后查看目录。如果目录中有您想要的语言部分,并且其中有一个Pronunciation部分,那么使用另一个API调用来获取该部分的wikitext,您必须自己解析该部分。它很可能对不同的单词使用或不使用不同的模板,因为Wiktionary正在不断发展。

还有针对WiktionaryMediaWiki API的邮件列表。

票数 6
EN

Stack Overflow用户

发布于 2012-09-28 04:17:23

您可以在wiktionary dbpedia上构建,然后向their SPARQL endpoint发送一个类似下面这样的SPARQL查询

代码语言:javascript
复制
PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wt:<http://wiktionary.dbpedia.org/terms/>

SELECT DISTINCT ?spell ?pronounce
WHERE { 
  ?spell rdfs:label "work"@en ;
            wt:hasLangUsage ?use .

  ?use dc:language wt:English ;
          wt:hasPronunciation ?pronounce .
}

在本例中,"work“是要查找拼写的单词。

编辑:

一个类似的项目是dbnary,它更活跃,提供更可靠的结果。您可以将SPARQL endpoint用于以下查询:

代码语言:javascript
复制
SELECT DISTINCT ?pronun
WHERE {
  ?form lemon:writtenRep "work"@en ;
        lexinfo:pronunciation ?pronun .
}
票数 4
EN

Stack Overflow用户

发布于 2011-03-21 21:38:55

以下是我针对类似情况所做的工作。

  1. 访问。它将教你如何使用PHP抓取链接。
  2. 现在我们有了链接,我们需要将音频(*.ogg)链接从普通链接中分离出来。我们需要在PHP中使用pathinfo函数。The officual documentation for pathinfo应该是一个好的开始。
  3. 使用Ajax或任何其他首选方法在result.
  4. Deliver之外创建一个The officual documentation for pathinfo

或者你可以尝试一下"http://api.forvo.com/demo“。它看起来很有希望。

我不会给你完整的答案!因为它不会再有趣了。我希望它能帮上忙。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5378126

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档