前書き
私は Linux システムを使っているので、英語が苦手な私にとって、以前は Youdao Dictionary を使っていたのですが、英語の文書を読むときにいつもつまづいていました。とても良い感じですが、Web バージョンもありますが、サイト全体の英語の Web ページには対応していません。 Youdao 辞書を実装するための Python で書かれた小さなツールを自分で実装するだけです。アイデアも非常に簡単です。Youdao の API を直接呼び出して、返された JSON を解析するだけです。
Python ネイティブ ライブラリのみが使用され、python2 と python3 をサポートします。
サンプル コード
#!/usr/bin/env python # -*- coding:utf-8 -*- # API key:273646050 # keyfrom:11pegasus11 import json import sys try: # py3 from urllib.parse import urlparse, quote, urlencode, unquote from urllib.request import urlopen except: # py2 from urllib import urlencode, quote, unquote from urllib2 import urlopen def fetch(query_str=''): query_str = query_str.strip("'").strip('"').strip() if not query_str: query_str = 'python' print(query_str) query = { 'q': query_str } url = 'http://fanyi.youdao.com/openapi.do?keyfrom=11pegasus11&key=273646050&type=data&doctype=json&version=1.1&' + urlencode(query) response = urlopen(url, timeout=3) html = response.read().decode('utf-8') return html def parse(html): d = json.loads(html) try: if d.get('errorCode') == 0: explains = d.get('basic').get('explains') for i in explains: print(i) else: print('无法翻译') except: print('翻译出错,请输入合法单词') def main(): try: s = sys.argv[1] except IndexError: s = 'python' parse(fetch(s)) if __name__ == '__main__': main()
を使用します
上記のコードを貼り付け、youdao.py という名前を付けます
名前を mv youdao.py youdao に変更し、追加します実行可能権限 chmod a+x youdao
を /usr/local/bin にコピーします。 cp youdao /usr/local/bin
使用する場合、翻訳対象の単語が最初のコマンドラインパラメータとして使用され、文は引用符で囲まれます。
概要
以上がこのQ&A記事の全内容です。この記事の内容が皆様の学習や仕事に少しでもお役に立てれば幸いです。ご質問がございましたら、メッセージを残してご連絡ください。
Python を使用してコマンドライン Youdao 辞書を実装する方法のその他の例については、PHP 中国語 Web サイトの関連記事に注目してください。