返回

绕过 Telegram 的电话号码输入:使用会话文件和客户端库

python

如何绕过 Telegram 帐户的电话号码输入

问题

使用多个 Telegram 帐户时,启动脚本时可能会提示你输入电话号码。这可能很烦人,尤其是在你有多个帐户的情况下。

解决方案

有一个巧妙的方法可以绕过 Telegram 的电话号码输入,让你可以继续使用未验证的帐户。该方法涉及使用会话文件(.session 文件)和 Telegram 客户库。

步骤

  1. 获取会话文件: 对于已验证的帐户,你通常可以在其数据目录中找到 .session 文件。复制此文件并将其重命名为适当的名称(例如,my_account_session.session)。

  2. 创建 Telegram 客户端: 使用 TelegramClient 类创建 Telegram 客户端,并指定会话文件、api_id 和 api_hash:

import telethon

api_id = # your api id
api_hash = # your api hash
session_file = 'my_account_session.session'

client = telethon.TelegramClient(session=session_file, api_id=api_id, api_hash=api_hash)
  1. 处理 PhoneNumberInvalidError 如果帐户未验证,则在调用 await send_mes_to_users(client) 时可能会引发 PhoneNumberInvalidError 错误。要处理此错误,请在 try-except 块中捕获它,并在发生时继续:
try:
    await send_mes_to_users(client)
except errors.rpcerrorlist.PhoneNumberInvalidError:
    print('Invalid phone number. Skipping account.')
    continue
  1. 运行脚本: 通过运行脚本或在 Python 解释器中调用 await client.run() 来启动 Telegram 客户端。

注意事项

  • 此方法仅适用于具有有效会话文件的帐户。
  • 如果帐户的会话文件丢失或已损坏,则无法跳过电话号码输入。

常见问题解答

  • 我怎样才能获得会话文件?

对于已验证的帐户,会话文件通常位于其数据目录中。在 Windows 上,数据目录通常位于 %APPDATA%/Telegram Desktop/tdata 中。在 macOS 上,它位于 ~/Library/Application Support/Telegram Desktop/tdata 中。在 Linux 上,它位于 ~/.config/Telegram Desktop/tdata 中。

  • 我可以在哪里找到我的 api_id 和 api_hash?

你的 api_id 和 api_hash 可以通过 My Telegram 页面获得:https://my.telegram.org

  • 我是否可以使用此方法来注册新帐户?

否,此方法仅适用于未验证的现有帐户。

  • 此方法是否安全?

是的,此方法是安全的。它使用 Telegram 官方提供的 API,不会损害你的帐户。

  • 是否有其他方法可以跳过电话号码输入?

没有其他已知的方法可以跳过 Telegram 的电话号码输入。

结论

绕过 Telegram 的电话号码输入是一种方便的技术,可以让你继续使用未验证的帐户。使用会话文件和 Telegram 客户库,你可以轻松实现此操作。请记住,此方法仅适用于具有有效会话文件的帐户。