Ответы пользователя по тегу Python
  • Instapy на aws amazon возможно?

    @nmelis
    chromedriver вроде нужно установить

    попробуйте
    apt-get install chromium-browser
    apt-get install chromedriver
    Ответ написан
    Комментировать
  • Как связать хэндлеры Amazon AWS Lambda с хэндлерами PyTelegramBotApi?

    @nmelis
    Здравствуйте, наверное ответ именно вам уже не актуален, но я отвечу для других, которые будут искать ответ на подобный вопрос!

    Так: Я выбрал Фласк и PyTelegramBotApi, фласк можно не брать, но с ним мне было проще
    # main.py
    from flask import Flask
    import telebot
    
    app = Flask(__name__)
    bot = telebot.TeleBot(os.getenv('TELEGRAM_BOT_TOKEN'),  threaded=False)
    
    @app.route('/' + os.getenv('TELEGRAM_BOT_TOKEN'), methods=['GET', 'POST'])
    def telegram_bot_handler():
        if flask.request.headers.get('content-type') == 'application/json':
            json_string = flask.request.get_data().decode('utf-8')
            update = telebot.types.Update.de_json(json_string)
            bot.process_new_updates([update])
            return json_string, 200
        else:
            print('You NOT made it!')
            flask.abort(403)
    
    @app.route('/set_webhook')
    def set_webhook(): # чтобы легко можно было установить веб хук
        bot.remove_webhook()
        sleep(1)
        try:
            return str(bot.set_webhook('{}{}'.format(os.getenv('WEBHOOK_TELEGRAM'), os.getenv( 'TELEGRAM_BOT_TOKEN')))), 200
        except telebot.apihelper.ApiException:
            pass
        return '', 200
    
    @bot.message_handler(func=lambda message: True, commands=['help'])
    def hello_command(message):
        tg.bot.reply_to(message, "Help text")

    В хендлере AWS Lambda указываем main:app
    Ответ написан