AWS лямбда: нет модуля с именем «телеграмма» - PullRequest
0 голосов
/ 14 июля 2020

Я пытался создать бота для телеграмм, который получал некоторую информацию о пользователе, такую ​​как e-mail, chat_id, интерес пользователя, и сохранял их как файл словаря. Я использую python 3,7 в качестве языка, а код выглядит следующим образом:

    from telegram.ext import (Updater, CommandHandler, MessageHandler, Filters, ConversationHandler)
    import logging
    import time
    import os
    import numpy as np
...
def main():
    #f=open("Test_test_dest_bot_token.txt", 'r')
    f=open("bppinfo_token.txt",'r')
    token=f.readline() #txt file 안에 token 정보 있음. 나중에 bpp_info_token.txt 로 바꾸면 됨.
    token=token.rstrip()
    f.close()

    updater=Updater(token=token, use_context=True)
    dp=updater.dispatcher
    conv_handler=ConversationHandler(
        entry_points=[CommandHandler('start', start)],

        states={  #키워드 -> 이메일
            AGREE:[CommandHandler('yes', yes),
                    CommandHandler('no', no)],
            KEYWORD:[MessageHandler(Filters.text, key)],
            PASS1:[CommandHandler('retry1', retry1),
                   MessageHandler(Filters.text, email)],
            EMAIL:[MessageHandler(Filters.text, email)],
            PASS2:[CommandHandler('retry2', retry2),
                   CommandHandler('end', end)]
        },
        fallbacks=[CommandHandler('end', end)]
    )

    dp.add_handler(conv_handler)
    # log all errors
    dp.add_error_handler(error)
    # Start the Bot
    updater.start_polling()
    #print("before \n")

    updater.idle()
    #print("before \n")

if __name__=='__main__':
    main()

Я загрузил zip-файл для telegram.ext и numpy файл на слой, но произошла ошибка модуля.

Response:
{
  "errorMessage": "Unable to import module 'lambda_function': No module named 'telegram'",
  "errorType": "Runtime.ImportModuleError"
}

Request ID:
"fb9726df-dc3e-4734-9a8d-4720b683c24f"

Function logs:
START RequestId: fb9726df-dc3e-4734-9a8d-4720b683c24f Version: $LATEST
[ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': No module named 'telegram'
END RequestId: fb9726df-dc3e-4734-9a8d-4720b683c24f
REPORT RequestId: fb9726df-dc3e-4734-9a8d-4720b683c24f  Duration: 1.53 ms   Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 49 MB  

Я не знаю, что мне делать, чтобы устранить эту ошибку, и могу ли я использовать ConversationHandler в AWS Lambda?

...