Advertisement
Guest User

Untitled

a guest
Feb 26th, 2020
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.19 KB | None | 0 0
  1. import telebot
  2. import os.path
  3. import configparser
  4.  
  5. from googletrans import Translator
  6.  
  7. translator = Translator()
  8. config = configparser.ConfigParser()
  9.  
  10. lang = 'ru' #устарело, ждёт замены на конфиги
  11.  
  12. bot = telebot.TeleBot("тут токен")
  13.  
  14. def extract_arg(arg):
  15.     return arg.split()[1:]
  16. @bot.message_handler(commands=['lang'])
  17. def change(message):
  18.     temp_lang = extract_arg(message.text)
  19.     try:
  20.         translator.translate("Привет", dest=str(temp_lang[0])) #костыль, знаю
  21.  
  22.         #тут должен быть код изменения языка в конфиге чата
  23.  
  24.         bot.reply_to(message, "Язык успешно изменён")
  25.     except Exception as e:
  26.         print(str(e))
  27.         bot.reply_to(message, "Ошибка, данного языка не существует! ")
  28.  
  29. @bot.message_handler(commands=['start', 'help'])
  30. def send_welcome(message):
  31.     bot.reply_to(message, "Скоро...?")
  32.  
  33. @bot.message_handler(content_types=["text"])
  34. def echo_all(message):
  35.  
  36.     lastChatId = message.chat.id
  37.     folder_name = str(lastChatId)
  38.  
  39.     if(not os.path.exists(folder_name)):
  40.         os.mkdir(folder_name)
  41.         config['DEFAULT'] = {'lang': 'ru'}
  42.  
  43.         with open(folder_name + '/config.ini', 'w') as configfile:
  44.             config.write(configfile)
  45.  
  46.  
  47.     if(len(message.text) >= 15000):
  48.         bot.reply_to(message, "Ошибка, в сообщении более 15000 символов!")
  49.         return
  50.     #bot.send_message(message.chat.id, "Обработка, ожидайте...")
  51.     try:
  52.         langtemp = translator.detect(message.text).lang
  53.         confidence = translator.detect(message.text).confidence
  54.         if(not langtemp == lang and confidence > 0.75):
  55.             translated = translator.translate(message.text, dest=lang) #устарело, ждёт замены на конфиги
  56.             bot.reply_to(message, translated.text + "\n\n[Перевод выполнен с " + langtemp + " языка]")
  57.     except Exception as e:
  58.          print (str(e))
  59.          bot.reply_to(message, "Ошибка апи, попробуйте ещё раз...")
  60. bot.polling(none_stop=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement