import getopt import sys import re import urllib.request import xml.etree.ElementTree as ET #有道詞典api接口 URL= 'http://fanyi.youdao.com/openapi.do?keyfrom=youdaoci&key=694691143&type=data&doctype=xml&version=1.1' #從互聯網獲取請求信息 def response(words): query = urllib.request.urlopen(URL + '&q=' + words) #返回xml頁面 return query def show_xml(resu): #解析xml結果 tree = ET.parse(resu) root = tree.getroot() loop(root) #遞歸輸出內容 def loop(root): for child in root: if child: loop(child) else: print(child.text) def main(): try: #從命令行接受要查詢的單詞 options, args = getopt.getopt(sys.argv[1:],'h', ['help']) except getopt.GetoptError as e: pass #將輸入的內容轉換成小寫 match = re.findall(r'[\w.]+', " ".join(args).lower()) #輸入內容很多事用空格連接 words = "_".join(match) resu = response(words) if not resu: return root = show_xml(resu) if __name__=='__main__': main()