无法将检索到的数据保存到MongoDB中- Python

z9smfwbn  于 2023-01-16  发布在  Go
关注(0)|答案(1)|浏览(143)

我正在从电报中检索数据,检索成功,但如何将其保存到MongoDB中。

for chat in chats:
with TelegramClient('sessionx', api_id, api_hash) as client:
    for message in client.iter_messages(chat, offset_date=datetime.date(2022, 11, 11), reverse=True):
        print(message)
        data = {"group": chat, "sender": message.sender_id,
                "text": message.text, "date": message.date}

        temp_df = pd.DataFrame(data, index=[1])
        df = df.append(temp_df)

集合.插入_许多(df)error

ni65a41a

ni65a41a1#

可能的错误:
df被定义为PandasDataFrame,否则,它可能无法解析您的对象并将其保存在mongo中。快速提醒,mongodb接受BSON格式的文档。
你可以这样做:

my_list = []
for chat in chats:
    with TelegramClient('sessionx', api_id, api_hash) as client:
        for message in client.iter_messages(chat, offset_date=datetime.date(2022, 11, 11), reverse=True):
            print(message)
            my_list.append({"group": chat, "sender": message.sender_id, "text": message.text, "date": message.date})

collection.insert_many(my_list)

相关问题