最近經常在伺服器上開發,經常會遇到不認識的單詞,然而 linux 下實在沒有什麼好用的詞典,索性自己寫乙個好了。
首先,google 了一下可用的詞典的 api,發現金山的 iciba 還是不錯的。要使用 iciba 的 api 需要首先申請乙個 key,目前 key 是免費的,並且沒有訪問次數限制,申請位址在這裡
申請了 key 之後在文件頁我們可以看到簡短的介紹。通過訪問我們就可以獲取 json 格式的單詞go的解釋。
python標準庫中的json
模組可以用來解析 json 資料,而urllib2
模組可以用來傳送http網路請求,我們通過使用 urllib2 獲取 json 資料之後即可獲得想要的解釋。函式如下
def lookup(word):
url = dict_api.format(word=word, key=key)
resp = urllib.urlopen(url)
json_result = json.loads(resp.read())
try:
meanings = json_result['symbols'][0]['parts']
sound = json_result['symbols'][0]['ph_am']
except keyerror as e:
print('\nword not found, check your spelling?\n')
return
print(u'\n\033[1m\033[4m\033[0m //\n'.format(word=word, sound=sound))
for meaning in meanings:
print(meaning['part'])
for mean in meaning['means']:
print('\t' + mean)
print('\n')
完整**在這裡 def.py
執行效果如圖:
命令列詞典
經常要查單詞,所以利用qq dict api寫了乙個命令列詞典工具 puts 沒有找到 return endbase s tran entries 0 puts base s word puts 基本解釋 result base s des collect do entry if entry.is ...
python實現命令列互動
最近因為工作需求在寫自動化測試指令碼,主要目的是測試 功能的完整性,然而在使用sshlibrary庫進行遠端ssh互動的時候總是出現問題,比如說遇到需要輸入密碼的互動,總是不能成功,還有遇到一直保持執行並實時輸出的命令,也無法讀取其中的輸出。所以就只能使用python實現指令碼進行互動,和ssh解耦...
使用python實現命令列進度條
有時候,需要在命令列實現進度條的功能,又不想列印出很多行。以下指令碼就實現這個功能。基本原理是,使用回車符,將游標重新設定到首行,注意,這裡使用 r 只是回到首行,並不換到下一行。重新整理進度條,就實現了進度條原地重新整理的效果。import time defprogressbar data,tot...