如何解决如何修复pyrogram.filters.command 的语法错误?
我正在尝试制作键盘按钮电报机器人。但我面临错误帮助我。我尝试了很多时间来修复但失败了。
我的代码:
from pyrogram.types import ReplyKeyboardMarkup
from pyrogram import client
bot = ("bot")
@pyrogram.filters.command(commands: Union["start"] = 'start',prefixes: Union["/","!"],case_sensitive: bool = False)
async def example():
bot.send_message(
chat_id=message.chat.id,text="test",reply_markup = ReplyKeyboardMarkup(
[
["test button"],["test button 2"]
]))
错误:
2021-04-16T11:57:40.864700+00:00 app[worker.1]: File "/app/main.py",line 6
2021-04-16T11:57:40.864717+00:00 app[worker.1]: @pyrogram.filters.command(commands: Union["start"] = 'start',case_sensitive: bool = False)
2021-04-16T11:57:40.864852+00:00 app[worker.1]: ^
2021-04-16T11:57:40.864858+00:00 app[worker.1]: SyntaxError: invalid Syntax
解决方法
您使用 command
过滤器作为装饰器,这不是 Pyrogram 更新处理的工作方式。
请阅读有关 how to use Filters 的相应文档。
编辑,因为我的原始答案没有回答手头的问题。
您不能将过滤器本身用作装饰器。过滤器是您可以传递给装饰器的参数,也就是更新处理程序。
from pyrogram import Client,filters
app = Client()
@app.on_message( # the actual decorator
filters.command("start") # the command filter
)
def handler(app,message):
message.reply("hi")
app.run()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。