0

似乎 Telethon 有一个新的更新,并且网络上有许多脚本不适用于新版本。我需要让我的频道中的所有参与者或在其中搜索(如果存在)。

这是我完美运行的代码:

from telethon import TelegramClient
from unsync import unsync
import os
import sys



api_id = 'api_id' # Your api_id
api_hash = 'api_hash' # Your api_hash
session_name = 'phone number' # Your phone number

os.chdir(sys.path[0])

if f"{session_name}.session" in os.listdir():
    os.remove(f"{session_name}.session")

@unsync
async def channel_info(username, api_id, api_hash):  
     async with TelegramClient(session_name, api_id, api_hash) as client:
         async for user in client.iter_participants(username):
             print(user.id,user.username)
   
             

channel_info('mychannel', api_id, api_hash).result()

问题是每次我运行代码时都需要输入我的电话号码和接收代码

请输入您的手机(或机器人令牌):并且请输入您收到的代码:

为什么电报无法识别我的笔记本电脑?我怎样才能避免每次都征求我的同意?

PS:如果我os.remove(f"{session_name}.session")从我的代码中删除,我会遇到以下错误

无效的通道对象。确保传递正确的类型,例如确保请求是为通道设计的,或者寻找更适合的不同类型(由 GetFullChannelRequest 引起)

4

0 回答 0