在 google-app-engine 上托管 Telethon 用户 BOT

Hosting a Telethon User BOT on google-app-engine

我正在尝试在 Google App Engine 灵活环境 运行 python3.7 上部署一个简单的用户机器人,但出现以下错误。谁能帮我提出解决这个问题的建议?

"File "/env/lib/python3.7/site-packages/telethon/client/auth.py”,第 20 行,在 phone 中:typing.Callable[[], str] = lambda : input('Please enter your phone (or bot token): '), EOFError: EOF when reading a line

感谢您的宝贵时间

Telethon(显然)要求您登录并在您的帐户上进行正常的用户会话,这本身要求您在询问时输入您的号码并输入收到的代码,但由于 Google App 引擎不允许输入 @Sashidhar 提到的,根据您的 userbot 实现,您可以尝试使用 userbot.session 方法进行身份验证,它可以在本地生成并放置在 Google App Engine 中。

我尝试在 App Engine 上使用 python 来调用 telethon 函数,在部署应用程序时。我从浏览器收到内部服务器错误。

我看到你在这条路上取得了成功,你能不能帮我开个头,比如如何配置 app.yaml、main.py、requirements.txt , .... 或任何适当的图书馆安排来完成这项工作。

非常感谢。

以下是我的 main.py,它在眉毛上引发了服务器内部错误,如果第一个与电视节目相关的行被注释掉,问题就不会发生:

client = TelegramClient(phone, api_id, api_hash)

main.py
--------
from flask import Flask, request
import datetime
import time
import asyncio

from telethon import  TelegramClient, events, sync

app = Flask(__name__)

api_id = xxxxxxxx
api_hash = 'xxxxxxxxxxxxxxxxxxxxxxxx'
phone = '+xxxxxxxxxxxx'

@app.route('/', methods=['GET'])
def hello():
    reqaction = request.args.get('action', 'connect')
    client = TelegramClient(phone, api_id, api_hash) 

if __name__ == '__main__':
    app.run(host='localhost', port=8080, debug=True)

你介意照亮这个来帮助我开始吗,非常感谢

我现在可以使用会话字符串登录方法在 GAE 上托管我的用户 BOT。

https://docs.telethon.dev/en/latest/concepts/sessions.html#string-sessions