私はGoogle翻訳のAPIを使用していますし、それがエラーを示している。Argparse:あまりにもいくつかの引数の翻訳API
translate boy -d french
usage: [-h] [-d DEST] [-s SRC] [-c] text
: error: too few arguments
APIのコードは、私はそれがモジュールによるものだと思う
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import argparse
import sys
from googletrans import Translator
def main():
parser = argparse.ArgumentParser(
description='Python Google Translator as a command-line tool')
parser.add_argument('text', help='The text you want to translate.')
parser.add_argument('-d', '--dest', default='en',
help='The destination language you want to translate. (Default: en)')
parser.add_argument('-s', '--src', default='auto',
help='The source language you want to translate. (Default: auto)')
parser.add_argument('-c', '--detect', action='store_true', default=False,
help='')
args = parser.parse_args()
translator = Translator()
if args.detect:
result = translator.detect(args.text)
result = """
[{lang}, {confidence}] {text}
""".strip().format(text=args.text,
lang=result.lang, confidence=result.confidence)
print(result)
return
result = translator.translate(args.text, dest=args.dest, src=args.src)
result = u"""
[{src}] {original}
->
[{dest}] {text}
[pron.] {pronunciation}
""".strip().format(src=result.src, dest=result.dest, original=result.origin,
text=result.text, pronunciation=result.pronunciation)
print(result)
if __name__ == '__main__':
main()
ですしかし私は確信していません。私は初心者ですので、完全に説明してください。前もって感謝します。
'-d'とその引数を指定しましたが、' text'の文字列は指定しませんでした。 'text'は位置情報であり、したがって必須です。 Py3では、どの引数が欠落していたかをエラーが示していました。 Py2はこの一般的な「あまりにも少ない」ものです。 – hpaulj
@hpaulj OPは 'boy'をテキストとして渡しますか? – poke
私は少年をテキストとして提供しました。 – Mohit