微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Telethon 将名称更改为当前时间

如何解决Telethon 将名称更改为当前时间

我希望我的应用程序每分钟将我在电报中的名字更改为当前时间。我已经尝试做某事,但无济于事

from telethon import TelegramClient
from telethon.tl.functions.account import UpdateProfileRequest
import asyncio
import datetime

today = datetime.datetime.today()
time= today.strftime("%H.%M")
 
api_id = 123456
api_hash = 'ххх'
client = TelegramClient('session_name',api_id,api_hash)
client.start()

async def main():
    while True:  
        await client(UpdateProfileRequest(first_name=time))
        await asyncio.sleep(1)
    
client.loop.run_forever()

解决方法

from telethon import TelegramClient
from telethon.tl.functions.account import UpdateProfileRequest
import asyncio
import datetime
 
api_id = 123456
api_hash = 'ххх'
client = TelegramClient('session_name',api_id,api_hash)
client.start()

async def main():
    while True:
        time = datetime.datetime.today().strftime("%H.%M")
        async with client:
            await client(UpdateProfileRequest(first_name=time))
            await asyncio.sleep(60)
    
asyncio.get_event_loop().run_until_complete(main())
,

第一件事不要使用 while 循环,它可能会使用太多内存并禁用来自 Telethon 的句柄更新 第二个东西 1 秒太快了,电报可能会禁止您处理垃圾邮件 我更喜欢用aiocron

使用以下命令安装 aiocron

absPathShellReplace()
{
    E="${1##*/}"; D="${E#$E${E#.}}"; DD="${D#$D${D#..}}"
    DIR="${1%$E}${E#$DD}"; FILE="${1#$DIR}"; SEP=${FILE:+/}
    echo "`cd "${DIR:-.}"; pwd`${SEP#$DIR}$FILE"
}

代码:

pip3 install aiocron

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。