我正在使用Telethon和Python 3.6xx
能够从群组中检索消息,没有问题,但是当涉及到频道时,我被卡住了.
dialogs = client(get_dialogs)
for chat in dialogs.chats:
getmessage = client.get_messages(chat.id, limit=400)
for message in getmessage:
print(message.message)
Run Code Online (Sandbox Code Playgroud)
我搜索过telethon文档,但大多数答案都是为了回应旧版本get_message_history.
当我尝试使用以下内容chat.id = 1097988869(news.bitcoin.com)时,我收到以下错误(对于群组chat.id工作正常):
PeerIdInvalidError:使用了无效的Peer.确保传递正确的对等类型
我正在尝试用 Python 编写一个简单的东西来自动从 Telegram 上的频道下载一些媒体。为此,我正在使用 Telethon。
我不断收到一个我无法解决的错误,我不明白原因。
“‘协程’对象没有‘数据’属性”
我也尝试过使用 asyncio,但是没有用。下面是我最新的代码
# In[1]:
import asyncio
loop = asyncio.get_event_loop()
import telethon.sync
from telethon import TelegramClient
from telethon.sync import TelegramClient
loop = asyncio.get_event_loop()
# In[2]:
api_id = #MyAPIID
api_hash = 'TheHash'
phone_number = '+34xxxxx'
channel_username = 'meanwhileinromania'
# In[3]:
client = TelegramClient('session1', api_id, api_hash)
client.start()
# In[4]:DOWNLOAD
msgs = client.get_messages(channel_username, limit=100)
for msg in msgs.data:
if msg.media is not None:
client.download_media(message=msg)
Run Code Online (Sandbox Code Playgroud)
我得到 [3]:
<coroutine object AuthMethods._start at 0x00000190D413F9C8>
Run Code Online (Sandbox Code Playgroud)
并在 [4]:
C:\Users\user1\AppData\Local\Programs\Python\Python37\lib\site-packages\ipykernel_launcher.py:3: RuntimeWarning: coroutine …Run Code Online (Sandbox Code Playgroud)