type
Post
status
Published
date
Feb 16, 2026
slug
imgupbot1
summary
这是一个部署在 Cloudflare Workers 上的 Telegram 机器人。它可以接收您发送到 Telegram 的图片、视频、音频、文档等多种文件,并将它们自动上传到您指定的图床或对象存储服务(需要有公开的上传接口),然后将生成的公开链接返回给您。
tags
github
cloudflare
category
开源分享
icon
password
网址
Telegram 图床上传机器人 (基于 Cloudflare Workers)
部署教程
这是一个部署在 Cloudflare Workers 上的 Telegram 机器人。它可以接收您发送到 Telegram 的图片、视频、音频、文档等多种文件,并将它们自动上传到您指定的图床或对象存储服务(需要有公开的上传接口),然后将生成的公开链接返回给您。
本项目利用 Cloudflare Workers 的 Serverless 特性,可以实现低成本甚至免费(在 Cloudflare 免费额度内)运行。
✨ 功能特性
- 自动上传: 直接向机器人发送文件即可触发上传。
- 多种文件支持: 支持400多种文件格式,包括常见的图片、视频、音频、文档、压缩包、可执行文件等。
- 文件大小限制: 支持最大20Mb的文件上传(受Telegram Bot自身限制)。
- 分片上传功能:
- 突破Telegram 20MB的文件大小限制
- 通过分割大文件为多个分片上传后合并
- 支持断点续传和取消上传
- 使用
/chunk_upload命令启动分片上传
- 文件备注功能: 在发送文件时添加描述文字作为备注,方便后续查找和整理。
- 配置灵活: 通过 Cloudflare 环境变量和 Secrets 配置图床地址、Bot Token 和可选的认证信息。
- 部署简单: 基于 Cloudflare Workers,部署流程相对简单。
- 低成本: 利用 Cloudflare 的免费套餐额度。
- 安全: 敏感信息(如 Bot Token、认证代码)通过 Secrets 管理,更加安全。
- 一键设置Webhook: 内置Webhook配置端点,简化机器人设置过程。
- 上传历史管理: 支持查看、搜索和删除历史上传记录,并提供文件类型筛选和分页浏览功能。
- 统计分析功能:
- 用户上传文件数量和总大小统计
- 每日/每周/每月使用报告
- 图床存储使用情况监控
- 上传成功率分析
- 管理员模式:
- 用户权限控制(限制/解除限制用户)
- 用户列表管理与监控
- 机器人使用统计查看
- 管理员广播消息功能
- 自动清理旧内容功能(可设置天数)
📋 支持的文件格式类别
- 🖼️ 图像: jpg, png, gif, webp, svg, bmp, tiff, heic, raw...
- 🎬 视频: mp4, avi, mov, mkv, webm, flv, rmvb, m4v...
- 🎵 音频: mp3, wav, ogg, flac, aac, m4a, wma, opus...
- 📝 文档: pdf, doc(x), xls(x), ppt(x), txt, md, epub...
- 🗜️ 压缩: zip, rar, 7z, tar, gz, xz, bz2...
- ⚙️ 可执行: exe, msi, apk, ipa, deb, rpm, dmg...
- 🌐 网页/代码: html, css, js, ts, py, java, php, go...
- 🎨 3D/设计: obj, fbx, blend, stl, psd, ai, sketch...
- 📊 数据/科学: mat, hdf5, parquet, csv, json, xml...
总计支持超过400种文件格式!
🚀 工作原理
- 用户在 Telegram 中向此机器人发送文件(图片、视频、音频、文档等)。
- Telegram 将包含文件信息的更新(Update)通过 Webhook 发送到 Cloudflare Worker 的 URL。
- Cloudflare Worker 脚本被触发,解析收到的更新。
- Worker 使用 Telegram Bot API 下载用户发送的文件。
- Worker 将下载的文件上传到在环境变量
IMG_BED_URL中配置的图床地址,(如果配置了AUTH_CODE)会携带相应的认证参数。
- Worker 解析图床返回的响应,提取公开的文件链接。
- Worker 使用 Telegram Bot API 将获取到的文件链接发送回给用户。
- Worker 将上传统计数据存储到 KV 存储中,用于生成统计报告。
🔧 环境要求
• 一个 Telegram Bot: 需要通过 BotFather 创建,并获取其 Bot Token。
• 一个图床/对象存储服务:
◦ 需要提供一个公开的 文件上传接口 URL (
IMG_BED_URL)。
◦ 如果该接口需要认证,需要获取相应的 认证代码 (AUTH_CODE)。支持URL参数和Bearer Token认证方式。
• 一个 Cloudflare 账户: 免费账户即可开始。
• Cloudflare KV 存储: 用于存储用户统计数据(如需使用统计功能)。- Author:TRNote
- URL:https://nt.665669.xyz/article/imgupbot1
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!












