微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Telethon - 如何设置 Django 项目以在远程服务器上使用 Telethon?

如何解决Telethon - 如何设置 Django 项目以在远程服务器上使用 Telethon?

我有一个由同事制作的 Django 项目,它运行良好并部署在服务器上。我在一个单独的测试 Python 项目中测试了方法和新功能,使用 Telethon 库(将用户添加到频道,从频道中删除他们,创建新频道等),并且它们在我的本地环境中运行良好,只需运行“python file.py”命令,然后在我的本地环境中使用 Quart 库进行测试。

但是,现在我想将这些功能合并到我的同事在他们的项目中制作的服务器中,以使其持续运行,并使用他们需要从 Telethon 获取的来自 Telegram 的数据。

我遇到的第一个错误val foo_url = System.getProperty("foo")

之前,我使用 Quart 作为微服务在浏览器上进行调用和请求,但如何在 Django 服务器上复制此功能

如果我尝试运行此视图:

val httpProtocol = http
    //.baseUrl("http://127.0.0.1:5000")
    .baseUrl(foo_url)

我在行 Cannot send requests while disconnected

上收到错误

网址很简单,像这样:

async def get_all_channels(request): try: dialogs = await client.get_dialogs() dialogs_str = '' dialog_list = [] for dialog in dialogs: dialog_type = 0 if str(type(dialog.entity)) == "<class 'telethon.tl.types.Channel'>": type_str = 'CANAL' elif str(type(dialog.entity)) == "<class 'telethon.tl.types.ChannelForbidden'>": type_str = 'CANAL PROHIBIDO' elif str(type(dialog.entity)) == "<class 'telethon.tl.types.User'>": type_str = 'USUARIO' else: type_str = str(type(dialog.entity)) if type_str == 'CANAL': has_admin_rights = dialog.entity.admin_rights is not None else: has_admin_rights = False dialogs_str += '{} - {}\n'.format(dialog.name,str(dialog.id)) if has_admin_rights: if type_str == 'CANAL': type_str = 'CANAL CLONADO' else: if type_str == 'CANAL': type_str = 'CANAL ORIGINAL' if type_str == 'CANAL ORIGINAL': dialog_type = 1 elif type_str == 'CANAL CLONADO': dialog_type = 2 elif type_str == 'USUARIO': dialog_type = 3 dialog_list.append([dialog_type,dialog.name,dialog.id]) dialog_list.sort(key=lambda dialog_list: dialog_list[0]) aux_type = -1 for dialog in dialog_list: if dialog[0] != aux_type: if dialog[0] == 0: print('OTROS:') elif dialog[0] == 1: print('\n\nCANALES ORIGINALES:') elif dialog[0] == 2: print('\n\nCANALES CLONADOS:') elif dialog[0] == 3: print('\n\nUSUARIOS:') aux_type = dialog[0] print('{} (ID: {})'.format(dialog[1],str(dialog[2]))) return JsonResponse(json.dumps(dialog_list)) except: print(traceback.format_exc()) return JsonResponse(traceback.format_exc(),safe=False)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。