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

Telethon 运行一次,名称“main 未定义”

如何解决Telethon 运行一次,名称“main 未定义”

我有这个加入频道和帖子的代码,但是每当我运行它时,它都会对 1-2 个频道执行此操作,然后我收到一个错误

回溯(最近一次调用最后一次): 文件“C:/Users/Arnoldas/PycharmProjects/pythonProject/again.py”,第 97 行,在 asyncio.run(main()) NameError: name 'main' 未定义。是什么导致了这个问题,我该如何保持代码运行?

code:

from telethon.sync import TelegramClient
from telethon.tl.functions.channels import JoinChannelRequest
from telethon.errors.rpcerrorlist import FloodWaitError
import time
from dotenv import load_dotenv
import os
import asyncio
channel_list=['CocktailBar_discussion','apmcoin_official','suprafinance','auroraOfficialEN','HelloLambda','AlpacaCity','themorpheusnetwork','chiliz_io','BKEXEnglish','riodefiofficial','OnXFi','DeepOnionCoin','hellochromia','AnimeBEP20','daomaker','TheCoinEx','Ochain','pNetworkDefi','devprtcl','officialxyx','powerledger','bounce_finance','uncx_token','concertVR1','obyteorg','telcoincommunity','DAAWallet','Metahash_ENG','surf_finance','dfinity','xinfintalk','xcashglobal','propsproject','BTCPrivate','OIN_Finance_Eng','mithcash','hivenetwork','tokeNown','trustverse_officialchannel','wax_io','TerraLunaChat','unit_en','FilecashGlobal','FryWorldFinance','originprotocol','LibraEcosystem','SpartanProtocolOrg','wgreenpay','cartesiproject','buymemecash','IGgalaxy','AlphaQuark','basedmoney','hybrixgroup','RYIUNITY','mftudotnet','MixDex','mobius_network'
]


client = TelegramClient('session_name',myid,myapikey
                    )
client.start()
for values in channel_list:
    try:
        destination_channel_username=values
        entity=client.get_entity(destination_channel_username)
        client(JoinChannelRequest(channel=values))
        client.send_message(entity=entity,message='Want to learn how we make crypto hedging easy? Join ProSwap Telegram channel ProSwapCommunity @ TG')
        client.send_file(values,'C:/Users/Arnoldas/Desktop/PROSWAP.png')
        time.sleep(20)
    except:
        continue
        time.sleep(20)

asyncio.run(main())

解决方法

您尚未定义 ma​​in 函数。

像这样编写代码:

from telethon.sync import TelegramClient
from telethon.tl.functions.channels import JoinChannelRequest
from telethon.errors.rpcerrorlist import FloodWaitError
import time
from dotenv import load_dotenv
import os
import asyncio
channel_list=['CocktailBar_Discussion','apmcoin_official','suprafinance','AuroraOfficialEN','HelloLambda','AlpacaCity','themorpheusnetwork','chiliz_io','BKEXEnglish','riodefiofficial','OnXFi','DeepOnionCoin','hellochromia','AnimeBEP20','daomaker','TheCoinEx','Ochain','pNetworkDefi','devprtcl','officialxyx','powerledger','bounce_finance','uncx_token','concertVR1','obyteorg','telcoincommunity','DAAWallet','metahash_ENG','surf_finance','dfinity','xinfintalk','xcashglobal','propsproject','BTCPrivate','OIN_Finance_Eng','mithcash','hivenetwork','tokenown','trustverse_officialchannel','wax_io','TerraLunaChat','unit_en','FilecashGlobal','FryWorldFinance','originprotocol','LibraEcosystem','SpartanProtocolOrg','wgreenpay','cartesiproject','buymemecash','IGGalaxy','AlphaQuark','basedmoney','hybrixgroup','RYIUNITY','mftudotnet','MixDex','mobius_network'
]


client = TelegramClient('session_name',myid,myapikey
                    )
client.start()
async def main():
    for values in channel_list:
        try:
            destination_channel_username=values
            entity=await client.get_entity(destination_channel_username)
            await client(JoinChannelRequest(channel=values))
            await client.send_message(entity=entity,message='Want to learn how we make crypto hedging easy? Join ProSwap Telegram channel ProSwapCommunity @ TG')
            await client.send_file(values,'C:/Users/Arnoldas/Desktop/PROSWAP.png')
            await asyncio.sleep(20)
        except:
            continue
            await asyncio.sleep(20)

asyncio.run(main())

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