2016-08-03 44 views
0

這可能最終會成爲一個非常普遍的問題,但希望對其他人也有用。用於強調音節的詞典API

我希望能夠請求一個單詞,這個單詞是x個音節,重音在x。[y]音節上。我發現很多API返回這兩個如Wordnik,但我不知道如何接近搜索方面。得到音節的URL是

GET /word.json/{word}/hyphenation 

但我不會提前提出這個詞來提出這個請求。他們也有這樣的:

GET /words.json/randomWords 

它返回一個列表隨機詞。

有沒有一種方法可以實現我想要的這個API而不要求隨機的單詞反覆檢查它們是否符合我的需求?這看起來好像很慢,並將我推向了我的使用限制。

我是否需要建立自己的數據結構以及單詞和音節來本地查詢?

+0

不幸的是,Wordnik現在不提供此數據,但類似的東西在我們的路線圖上。我沒有發佈日期,但是如果您加入我們的API通告列表(http://wordnik.us2.list-manage1.com/subscribe?u=1c9b004e359a58df355705423&id=e142268969),您將成爲第一個聽到的人。 (另外,請隨時發送功能請求!) – esperluette

+0

哇!我沒有預料到Wordnik會有人遇到這個問題。我訂閱了公告列表,並期待收到有關新內容的消息! – jemtan990

回答

1

我懷疑你會發現任何大字典API的這種專業查詢。你需要下載一個英文字典並創建你自己的數據結構來完成這種事情。

The Moby Project有一個帶有約185,000個字的連字詞典。還有許多其他字典項目可用。開始尋找的好地方是http://www.dicts.info/dictionaries.php

一旦你下載了字典,你需要預處理它來建立你的數據結構。您應該能夠構建由(音節,強調)索引的詞典或哈希映射,並且其數據成員是單詞列表。所以你會有一個條目,如(4, 2)(四音節單詞重點在第二個音節),以及所有這些單詞的列表。

爲了查詢它,你只需將查詢打包到一個結構中並在散列圖中查找該鍵。然後從結果列表中選擇一個隨機單詞。

+0

這是我所期望的答案,但並不希望。我試圖找到一個捷徑,但我想我會做蠻力的工作。感謝您的資源! – jemtan990