aigram。从控制台删除执行程序消息

问题描述 投票:0回答:1

使用 python3 aiogram 库作为电报机器人。有没有办法从执行器生成的控制台中删除消息?如果您使用skip_updates=True

开始轮询,则会显示诸如
Goodbye!
Updates were skipped successfully.

之类的消息

我的机器人的开始部分是这样的:

# Start the bot
if __name__ == '__main__':
    executor.start(dp, notify_message())
    executor.start_polling(dp, skip_updates=True)

我在控制台中收到了那些烦人的消息。有没有一个参数可以关闭它们?我在 aiogram 文档上找不到任何内容。如果没有这个选项,有任何与 python3 /dev/null 相关的肮脏技巧吗?

python-3.x telegram-bot polling executor aiogram
1个回答
0
投票

没有直接的方法可以删除 aiogram 库中执行器生成的消息。不过,您可以尝试一些解决方法。一种选择是使用以下代码将输出重定向到 /dev/null:

import os
import sys

# Redirect stdout and stderr to /dev/null
sys.stdout = open(os.devnull, 'w')
sys.stderr = open(os.devnull, 'w')

这会将所有输出重定向到 /dev/null,这是一个特殊文件,会丢弃写入其中的所有数据。另一种选择是使用日志记录模块来禁用消息。您可以通过将以下代码添加到脚本中来完成此操作:

import logging

# Disable logging messages
logging.getLogger('aiogram').setLevel(logging.WARNING)

这将禁用 aiogram 库中的所有消息。您可以调整日志记录级别以仅显示您需要的消息。

© www.soinside.com 2019 - 2024. All rights reserved.