关键词:Telegram 机器人教程,以太坊钱包管理,web3.py,PythonAnywhere 部署,加密货币资产管理,Goerli 测试网,区块链 API,加密钱包关键词
只需几分钟,你就能把 Telegram 变成随身携带的「以太坊轻钱包」。以下内容兼顾“爽文”体验与实战落地,确保新手也能零误差复现。
环境准备:三件套不可少
请先把 Telegram 账号、Python 运行环境、网络连接 备好,下面是逐步清单:
- Telegram 机器人
在 Telegram 里搜索并打开@BotFather,输入/newbot取名字(例如 ETH_demo_bot),拿到 HTTP API token,复制保存。 Python 依赖库
pip install web3 pyTelegramBotAPI- 区块链 API 提供方
注册 Infura 或 Alchemy。进入 Dashboard → 新建项目 → 拷贝 Goerli 测试网 节点的 API KEY,省钱不出错。
👉 三分钟领取官方 0.2 ETH 水龙头,轻松玩转 Goerli 测试网。
代码精修:简简单单改 3 行
官方仓库中的 main.py 核心逻辑已经有 300+ 行,你只需定位三处:
| 行号 | 代码片段 | 修改说明 |
|---|---|---|
| 9 | API_TOKEN = '' | 填入 @BotFather 给的 Token |
| 77 | web3 = Web3(Web3.HTTPProvider('https://goerli.infura.io/v3/YOUR_KEY')) | 替换 YOUR_KEY |
| 135 | 同上 | 保持一致,避免踩坑 |
完成后在本地跑一次,提示 Bot is running! 即可进入下一步。
部署上线:免费云服务器一键托管
打开 PythonAnywhere,注册免费账户并执行四步:
- 在「Files」里新建
eth_bot.py,将本地代码整段粘进去。 打开「Consoles → Bash」,再敲一次安装命令:
pip3.9 install --user web3 pyTelegramBotAPI- 返回「Web」标签页,启动 Flask 或 Scheduled task,按向导绑定代码文件。
- 出现绿色 “Running” 字样,即表明 Telegram 机器人常驻云端,不花一分钱。
👉 想更深度控制?这篇增强级云部署教程给你全套脚本和故障排查清单。
核心功能一开即用
通过 对话式指令 管理钱包,全程中文:/help 无需死记,先贴图再下单:
/createWallet
一句话一键创建:
- 自动生成公私钥对
- 私钥以一次性消息发送,务必离线保存
- 对应 Goerli 地址同步写入内存(教育版未持久化)
/importWallet
已有私钥用户输入 /importWallet 0x… ,10 秒恢复操作历史与余额。
/balance
调用 web3.eth.get_balance 取得 Goerli ETH 数量,实时换算成 USD 估计值(仅供审美)。
/send
格式:/send 0xReceiverAddress 0.01
- 地址正则校验
- gasPrice 动态拉取,脚本自动建议
- 交易广播后回传 Goerli Etherscan 链接,数秒可查哈希。
安全锦囊:别把学费交在链上
- 私钥绝不截图、不转发,尽量在聊天结束后把记录删掉。
- 助记词备份方案:手写纸质三份、异地分散保存。
- 主网=高压线:Goerli 只是测试沙盒,误操作也不会损失真币。
- 开源核查:教育代码缺少重放攻击与异常捕捉,请勿直接放到真实业务环境。
常见问题 FAQ
Q1:我能把 Goerli 换成主网吗?
A:可以,将 Infura endpoint 改成 https://mainnet.infura.io/v3/API_KEY 即可。但请自觉增加 rate-limit、重试策略、Gas 优化、私钥加密等安全措施。
Q2:为何机器人没有回应?
A:九成是 “token 没保存、API KEY 填错、PythonAnywhere 没启动”。依次排查终端日志 Web → Error Log,一行行看报错。
Q3:用户私钥真的安全吗?
A:默认代码把私钥写进 user_data 字典,未持久化,服务器重启即丢失;但依旧可能被进程窥探。生产级方案:使用 HSM、加密数据库或 MPC。
Q4:能支持 ERC-20 代币吗?
A:在 /send 基础上拓展 contract.transfer,再喂 token 合约地址即可。核心函数 10 行代码即可上线。
Q5:免费版 PythonAnywhere 会不会限速?
A:有 500 MB 内存、1 线程的限制,日均 300 次交易所累无压力;访问量暴涨时会出现 Worker Busy 提示,升级到 5 美元/月即可解开。
Q6:如何把中文交互语言改成英文或其他?
A:只需在 main.py 里搜索「中文提示文字」,替换成对应的 i18n.json 配置文件,再按 /setlanguage 指令动态切换即可。
写在最后
web3.py 与 Telegram Bot API 的配合,把「复杂的区块链操作」降维到「对话框聊天」。完成本教程后,你已掌握 部署一台可随时转账的以太坊钱包机器人 的三步曲。下一步,你可以拓展为多链支持、引入社交恢复,甚至利用 AI 聊天做链上行情助手——一切皆有可能,代码白纸黑字,任你天马行空。