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

如何使用Telethon从URL发送图片/媒体(适配Heroku环境)

通过URL发送图片/媒体的实现方法(适配Heroku环境)

方案1:直接使用Bot框架的URL发送接口

大部分主流Bot开发框架都支持直接传入媒体URL完成发送,无需先下载到本地。以你现有代码的风格为例,假设你的Bot库支持这类方法,代码可以改成:

# 直接传入图片URL发送
BOT.send_file(chat, "https://example.com/your-target-image.jpg")
# 部分框架可能有专门的send_photo方法,用法类似
# BOT.send_photo(chat, "https://example.com/your-target-image.jpg")

方案2:内存中下载后上传(适配不支持URL直接发送的框架)

如果你的Bot库不支持直接传入URL,可通过网络请求将图片下载到内存(避免Heroku本地存储的限制),再调用上传接口:

import requests

# 从目标URL获取图片二进制数据
img_response = requests.get("https://example.com/your-target-image.jpg")
# 确保请求成功
if img_response.status_code == 200:
    # 部分库接受字节流,需指定文件名
    file = BOT.upload_file(img_response.content, filename="photo.jpg")
    BOT.send_file(chat, file)

注意事项

  • 确保目标媒体URL是公开可访问的,没有防盗链、权限验证等限制
  • 大文件要注意内存占用,Heroku免费/基础版有内存配额限制,避免超出导致进程被杀死
  • 不同Bot平台对媒体类型、大小、URL格式有不同要求,需对应平台官方文档调整参数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 10:55:23