如何在telethon python的联系人中保存一个号码?
from telethon import TelegramClient
from telethon.tl.functions.contacts import GetContactsRequest
from telethon.tl.types import InputPeerUser
client = TelegramClient('arta0', api_id, api_hash)
client.connect()
#number=+19133704541
#name='ali karimi'
Run Code Online (Sandbox Code Playgroud)
添加联系人需要什么模块?
通过下面的代码,我已经使用 telethon 连接到电报大约一年了!
client = TelegramClient(
SESSION,
API_ID,
API_HASH
)
client.connect()
# the rest of my code
Run Code Online (Sandbox Code Playgroud)
昨天,当我想使用代码连接到我的会话时,我收到此错误:
telethon.errors.rpcerrorlist.AuthKeyDuplicatedError: An auth key with the same ID was already generated
Run Code Online (Sandbox Code Playgroud)
该错误不再说明,并且在文档中没有关于此错误消息的更多描述。我如何检索我的会话?
我想“阅读”来自私人 Telegram 频道的消息,我已经通过手机加入,但不知道如何在代码中指定它。
我已经编写了一些代码,在其中创建了一个 Telegram 客户端(使用我的电话号码登录),每次消息包含关键字(关键字:升序/降序 - 下面的代码)时,它都会“执行某些操作”。
问题:
仅当我向我的机器人、我保存的消息或我的联系人之一写入消息(使用与 API 相同的电话号码)时,它才会触发。
但是,如果我将消息发送到我的测试通道(我是管理员),则什么也不会发生。主频道中的消息也没有任何作用(我不是管理员)。
我不确定如何使用:
@client.on(events.NewMessage(chats=('插入一些东西')))
因为我不知道我需要插入什么。
已经尝试过将组名称显示为每条消息的标题,但没有任何反应/打印。
from telethon import TelegramClient, events, utils
# Get eventupdates on messages
# Here I get stuck and something needs to be changed:
@client.on(events.NewMessage)
async def handler(event):
#If keyword is in message -> do something
if "Descending" in event.raw_text:
print( 'Alert with ', event.text, '!')
if "Ascending" in event.raw_text:
print( 'Alert with ', event.text, '!')
Run Code Online (Sandbox Code Playgroud)
我预计该事件仅由特定组触发,但目前它由发送给我的机器人/联系人/已保存消息的消息触发,但不会通过频道消息执行任何操作。
我看过所有询问有关电视马拉松的条目,但没有一个回答我的问题。
我想要实现什么?我想将图像从 telegram 频道下载到我的电脑中
到目前为止我做了什么?我能够创建一个客户端并读取包含图像的消息。但是,在 download_media 之后,我不知道文件在哪里或如何继续。
注意:我不想使用任何 BOT。
这是我的代码:
import configparser #read API credentials from a config file
import json # dump data into JSON formatted files.
from telethon import TelegramClient
from telethon.errors import SessionPasswordNeededError
from telethon.tl.functions.channels import GetParticipantsRequest
from telethon.tl.types import ChannelParticipantsSearch
from telethon.tl.types import (PeerChannel)
from telethon.tl.functions.messages import (GetHistoryRequest)
from telethon import utils
#**************** CREATE TELEGRAM CLIENT ******************************
# Reading Configs
config = configparser.ConfigParser()
config.read("E:\TelegramBOT\config.ini")
# Setting configuration values
api_id = config['Telegram']['api_id']
api_hash = config['Telegram']['api_hash']
api_hash = …Run Code Online (Sandbox Code Playgroud) 我正在使用 Python 的热图库来登录多个帐户。我需要创建一个函数,仅将验证码发送到帐户,然后从其他用户输入(不是默认的热解图登录提示)中读取它。
当我使用 send_code 时,它会发送代码并等待来自控制台的用户输入,而这是我不希望它执行的操作。我只需要一个以电话号码作为参数并向其发送确认码的函数,然后使用该确认码登录的函数(从其他地方的用户输入获得,例如:从电报消息到链接的机器人或......
我正在使用Telethon连接到 telegram API,现在开发后我需要将项目 api 更改为主帐户。我想知道电视马拉松将凭据存储在哪里,以便我可以删除它们并强制重新进行身份验证?
我正在将Telethon库用于python。如何更改电报频道名称?在文档中找不到此内容。
好久都没法写剧本了。我有一个电报频道,我不想从该频道重新发送专辑,而是通过一条消息将其发送给我
from telethon import TelegramClient, events
from telethon import events
api_id =
api_hash = ""
chat = ''
client = TelegramClient('', api_id, api_hash)
print('started')
@client.on(events.Album)
async def handler(event):
#what farther
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Telethon 库编写一个访问 Telegram 客户端的电报机器人。下面的代码中一切正常,但运行代码时,Telegram Auth 过程是通过终端运行的。有没有办法自动化该过程,以便我可以使用 Python 登录客户端(无需在终端中输入)。
Auth 过程要求:
我想要实现的是,当用户调用某个命令时,机器人会启动客户端登录过程,并要求用户输入密码和安全代码,然后用于登录客户端。该机器人将使用 python-telegram-bot 库来管理与用户的对话,同时它将使用 Telethon 库来连接到客户端。这可能吗?谢谢
这是主文件:(一个工作测试示例,尝试在使用 python-telegram-bot 时登录 Telethon Telegram 客户端)
from telethon import TelegramClient
from karim.secrets import secrets
import asyncio
# this def gets called when the /telethon command is sent by the user to the bot
def telethonMessage(update, context):
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
api_id = secrets.get_var('API_ID')
api_hash = secrets.get_var('API_HASH')
client = TelegramClient('anon', api_id, api_hash, loop=loop)
with client:
loop.run_until_complete(send_telethon_message(client, update.effective_user.id))
async def send_telethon_message(client, user_id):
me …Run Code Online (Sandbox Code Playgroud) “telethon”库有一个“获取消息”方法,您可以使用该方法获取消息和相关信息,包括评论。
但你能得到反应吗? https://core.telegram.org/method/messages.getMessageReactionsList