📜  电报 Telethon 获取新用户详细信息 (1)

📅  最后修改于: 2023-12-03 15:40:57.624000             🧑  作者: Mango

电报 Telethon 获取新用户详细信息

电报是一款广泛使用的聊天应用程序。开发人员可以使用电报 API 构建自己的电报客户端和机器人。Telethon 是一款 Python 电报客户端,它可用于实现电报机器人和应用程序。

Telethon 提供了一系列接口,可以获取电报用户的详细信息。在本文中,我们将介绍如何使用 Telethon 获取新用户的详细信息。以下是获取新用户详细信息的步骤。

步骤1:安装 Telethon

要使用 Telethon,需要先安装它。可以使用 pip 包管理器在命令行中安装 Telethon。执行以下命令即可安装:

pip install telethon
步骤2:创建电报应用程序

要使用电报 API,必须先在电报上创建一个应用程序。转到 https://my.telegram.org/auth,按照说明注册新应用程序。在注册过程中,将为你的应用程序生成一个 API 密钥。请记住这个 API 密钥,稍后我们将需要使用它。

步骤3:创建 Telethon 客户端

要使用 Telethon 客户端连接到电报 API,需要创建 Telethon 客户端对象。在 Python 中,可以使用以下代码创建 Telethon 客户端。

from telethon import TelegramClient

API_ID = <your-api-id>
API_HASH = '<your-api-hash>'

client = TelegramClient('session_name', API_ID, API_HASH)

在上面的代码中,用你的 API ID 和 API HASH 替换 <your-api-id><your-api-hash>。这里的 session_name 可以是任意字符串,用来标识你的 Telethon 会话。

步骤4:登录 Telethon 客户端

在创建 Telethon 客户端之后,需要使用账户登录到电报 API。可以使用以下代码登录。

client.start(phone='<your-phone>')

用你自己的手机号码替换 <your-phone>。执行上面的代码,将向你的手机号发送一条验证码消息。在收到消息后,可以使用以下代码输入验证码,以验证你的手机号码。

client.sign_in(code=<code-from-message>)

用你在收到消息中获得的验证码替换 <code-from-message>。如果代码正常运行,你将成功登录到电报 API。

步骤5:获取新用户详细信息

在成功登录到电报 API 之后,可以使用以下代码获取最新添加到电报的用户的详细信息。

from telethon.events import NewMessage

async def get_user_info(event):
    message = event.message
    user_id = message.from_id.user_id
    user = await client.get_entity(user_id)
    print('User details:', user)

client.add_event_handler(get_user_info, NewMessage())
client.run_until_disconnected()

以上代码添加了一个事件处理程序 get_user_info,以获取从 NewMessage 事件获取的最新消息,并从消息中提取用户 ID。然后,使用 client.get_entity() 方法获取用户的详细信息。

上面的代码段返回了该用户的详细信息,可以结合 markdown 语法返回对应内容。

以下是您要查看的用户详细信息:

```python
{
   "id": 1234567,
   "first_name": "John",
   "last_name": "Doe",
   "username": "@johndoe",
   "phone": "+19999999999",
}

其中 id 是用户的电报 ID,first_namelast_name 是用户的姓和名,username 是用户的用户名,phone 是用户的电话号码。