前提・実現したいこと
Discord.pyでBOTに [韓国語] or [日本語]➡[英語] に翻訳する機能を追加しようと試みています
まずmain.pyでコマンドを受け付けて、その際に引数として原文をTranslate.pyに渡して、翻訳されたものをmain.pyで出力させる感じです。
(プログラミング初心者なので初歩的な知識不足かもしれませんが...)
発生している問題・エラーメッセージ
to_en() takes 1 positional argument but 2 were given
該当のソースコード
main.py
import
1import random 2from discord.ext import commands, tasks 3from discord.utils import get 4from modules.Translate import Translate 5 6bot = commands.Bot(command_prefix="!") 7 8 9#翻訳コマンド 10@bot.command() 11async def t_en(ctx, message): 12 translate = Translate() 13 msg = translate.to_en(message) 14 await ctx.channel.send(msg) 15 16bot.run('DISCORD_BOT_TOKEN') 17
Translate.py
import discord from googletrans import Translator import random from discord.ext import commands, tasks from discord.utils import get translator = Translator() class Translate: def to_en(message): lang = translator.detect(message).lang # 日本語だったら if lang == "ja": translated_text = translator.translate(message.content, src = lang, dest = "en").text return translated_text # 韓国語だったら elif lang == "ko": translated_text = translator.translate(message.content, src = lang, dest = "en").text return translated_text
試したこと
エラーメッセージから引数が多いということはわかりましたが、自分で確認しても引数はmessage一つだけしか渡していないのに...
と考えて止まっている状態です。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/04 11:10
退会済みユーザー
2021/06/04 16:26