You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Telethon发送压缩后可全尺寸展示的Telegram照片

实现发送压缩后可全尺寸展示照片的方法

send_message方法对远程URL的媒体类型自动识别逻辑优先级低,仅添加force_document=False参数无法触发正确的照片发送逻辑。

按以下方式调整即可实现目标效果:

  • 改用send_file方法发送媒体,该方法对媒体发送类型的控制精度远高于send_message的附属文件传参
  • 显式设置force_document=False,强制以普通照片形式而非文件形式发送内容
  • 图片附带的文字描述通过caption参数传入,替代原send_message的正文参数

修改后的可运行代码如下:

client = TelegramClient(
    "session", 
    api_id=CONFIG["client_api_id"], 
    api_hash=CONFIG["client_api_hash"]
)

client.connect()
if not client.is_user_authorized():
    phone = input("Your phone: ")
    client.send_code_request(phone)
    myself = client.sign_in(phone, input("Your code: "))

# 发送经Telegram压缩、支持点击查看全尺寸的照片
client.send_file(
    entity=777000,
    file="https://avatars.mds.yandex.net/get-zen_doc/5295210/pub_60dd6ea6828fb32711ebfc76_60dd7130df4f6532136de7b1/scale_1200",
    caption="test",
    force_document=False
)

补充说明:该模式下Telegram会自动对图片做符合平台规则的压缩,聊天列表中展示适配窗口宽度的预览图,点击即可查看全尺寸的压缩后图片,和官方客户端发送普通照片的效果完全一致。如果需要发送无压缩原图,再将force_document参数改为True以文件形式发送即可。

内容的提问来源于stack exchange,提问作者SkyGuy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 08:36:26