我想你會需要:
- 解析在維基詞典,這是從一個數據庫轉儲中提取的現有的english words名單。
- 下載數據庫轉儲(不僅僅是標題)並自己提取條款。
我試過選項a),只是因爲選項b)意味着幾GB的下載。 這非常簡單,實際上我包含了一個快速JS實現,您可以使用它作爲基礎以您的首選語言創建自己的腳本。
var baseURL="http://en.wiktionary.org/wiki/Index:English/"
var letters=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
for(i=0;i<letters.length;i++) {
var letter = letters[i];
console.log(letter);
$.get(baseURL+letter, function(response) {
$(response).find('ol li a').each(function (k,v) { console.log(v.text) })
})
}
編輯 我關於這個問題我很好奇,所以我寫了一個Python腳本。萬一有人發現它有用:
from lxml.cssselect import CSSSelector
from lxml.html import fromstring
import urllib2
url = 'http://en.wiktionary.org/wiki/Index:English/'
letters = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
for l in letters:
req = urllib2.Request(url+l, headers={'User-Agent' : "Magic Browser"})
con = urllib2.urlopen(req)
response = con.read()
h = fromstring(response)
sel = CSSSelector("ol li a")
for x in sel(h):
print x.text.encode('utf-8')
我粘貼結果引擎收錄自己,但500KB的限制不會讓我
尼斯解!謝謝! – 2013-03-20 10:22:57