Python Aiogram框架下如何获取正确的Telegram文件URL?
解决Telegram Bot获取正确文件URL的问题
你的代码错误在于,bot.get_file_url()需要传入字符串类型的文件路径,但你直接把get_file()返回的整个File对象传进去了,导致URL里拼接了整个对象的JSON内容,而非实际的文件路径。
修正后的代码如下:
file_id = product.image file = await bot.get_file(file_id=file_id) # 取File对象的file_path属性传入 url = bot.get_file_url(file_path=file.file_path)
修正后生成的URL会是正确的格式:https://api.telegram.org/file/bot<你的机器人令牌>/photos/file_3.jpg,可以直接访问对应的文件。
内容的提问来源于stack exchange,提问作者Alex Kuba
相关产品推荐
相关产品推荐

