如何使用telethon库发送带有@ID电报的消息
How to send message with @ID telegram using telethon library
我想用 telethon 发送消息,但我没有 phone 这个号码。
我只有@username Telegram。
使用此代码,我可以为我的联系人 phone 发送消息:
result = client.invoke(ImportContactsRequest([contact], replace=True))
contacts = client.invoke(GetContactsRequest(""))
for u in result.users:
client.send_message(u, 'Hi')
但我想发送消息给@username Telegram
您现在可以执行以下操作:
client.send_message('username', 'hello')
旧答案:
它在 Project's wiki 上,引用如下。
通过 ResolveUsernameRequest
"entity" 用于指代 User
or a Chat
(which includes a Channel
). Perhaps the most straightforward way to get these is by resolving their username:
from telethon.tl.functions.contacts import ResolveUsernameRequest
result = client.invoke(ResolveUsernameRequest('username'))
found_chats = result.chats
found_users = result.users
# result.peer may be a PeerUser, PeerChat or PeerChannel
有关此结果的详细信息,请参阅 Peer
。
我想用 telethon 发送消息,但我没有 phone 这个号码。 我只有@username Telegram。 使用此代码,我可以为我的联系人 phone 发送消息:
result = client.invoke(ImportContactsRequest([contact], replace=True))
contacts = client.invoke(GetContactsRequest(""))
for u in result.users:
client.send_message(u, 'Hi')
但我想发送消息给@username Telegram
您现在可以执行以下操作:
client.send_message('username', 'hello')
旧答案:
它在 Project's wiki 上,引用如下。
通过 ResolveUsernameRequest
"entity" 用于指代 User
or a Chat
(which includes a Channel
). Perhaps the most straightforward way to get these is by resolving their username:
from telethon.tl.functions.contacts import ResolveUsernameRequest
result = client.invoke(ResolveUsernameRequest('username'))
found_chats = result.chats
found_users = result.users
# result.peer may be a PeerUser, PeerChat or PeerChannel
有关此结果的详细信息,请参阅 Peer
。