Skip to content

Commit 6d5838d

Browse files
authored
Create main.py
0 parents  commit 6d5838d

File tree

1 file changed

+78
-0
lines changed

1 file changed

+78
-0
lines changed

main.py

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
"""
2+
____ _ _ __ ____
3+
| _ \ /\ | (_) / / / /\ \
4+
| |_) |_ _ / \ | |_ ___ _ _ / / / / \ \
5+
| _ <| | | | / /\ \ | | |/ _ \| | | < < / / > >
6+
| |_) | |_| | / ____ \| | | (_) | |_| |\ \ / / / /
7+
|____/ \__, | /_/ \_\_|_|\___/ \__,_| \_\/_/ /_/
8+
__/ |
9+
|___/
10+
11+
_______ _ _ _______ _ _ _ __ ____
12+
|__ __| | | | | |__ __| | | | | | | \ \ / /_ |
13+
| |_ __ __ _ _ __ ___| | __ _| |_ ___ _ __ | | ___| | ___| |__ ___ | |_ \ \ / / | |
14+
| | '__/ _` | '_ \/ __| |/ _` | __/ _ \| '__| | |/ _ \ |/ _ \ '_ \ / _ \| __| \ \/ / | |
15+
| | | | (_| | | | \__ \ | (_| | || (_) | | | | __/ | __/ |_) | (_) | |_ \ / | |
16+
|_|_| \__,_|_| |_|___/_|\__,_|\__\___/|_| |_|\___|_|\___|_.__/ \___/ \__| \/ |_|
17+
18+
19+
"""
20+
import os
21+
import requests
22+
import telebot
23+
from dotenv import load_dotenv
24+
25+
# Charger les variables d'environnement à partir du fichier .env
26+
load_dotenv()
27+
28+
# Récupérer le jeton d'API Telegram à partir de la variable d'environnement
29+
telegram_api_token = os.getenv('TELEGRAM_API_TOKEN')
30+
31+
# Créer un objet TeleBot avec le jeton d'API Telegram
32+
bot = telebot.TeleBot(telegram_api_token)
33+
34+
# Fonction de traduction
35+
def traduire_texte(texte, de, a):
36+
body = {
37+
"de": de,
38+
"a": a,
39+
"text": texte
40+
}
41+
42+
# Envoyer la requête à l'API de traduction
43+
response = requests.post('https://codingtranslator.onrender.com/api', json=body)
44+
45+
if response.status_code == 200:
46+
# Récupérer la réponse de l'API de traduction
47+
reponse = response.json()['reponse']
48+
return reponse
49+
else:
50+
return 'Une erreur s\'est produite lors de la traduction.'
51+
52+
# Commande /fr
53+
@bot.message_handler(commands=['fr'])
54+
def traduire_fr(message):
55+
texte = message.text.replace('/fr', '').strip()
56+
if texte:
57+
reponse = traduire_texte(texte, 'en', 'fr')
58+
bot.reply_to(message, reponse)
59+
else:
60+
bot.reply_to(message, 'Veuillez spécifier le texte à traduire après la commande /fr.')
61+
62+
# Commande /en
63+
@bot.message_handler(commands=['en'])
64+
def traduire_en(message):
65+
texte = message.text.replace('/en', '').strip()
66+
if texte:
67+
reponse = traduire_texte(texte, 'fr', 'en')
68+
bot.reply_to(message, reponse)
69+
else:
70+
bot.reply_to(message, 'Veuillez spécifier le texte à traduire après la commande /en.')
71+
72+
# Répondre aux autres messages
73+
@bot.message_handler(func=lambda message: True)
74+
def repondre_autre(message):
75+
bot.reply_to(message, 'Veuillez utiliser la commande /fr ou /en pour traduire le texte.')
76+
77+
# Lancer le bot
78+
bot.polling()

0 commit comments

Comments
 (0)