
从零开始:我如何用 Twitter API 打通游戏平台的自动发推功能
记录如何为自动化项目创建 Twitter Bot 并实现自动发推文,从开发者账号申请到 API 集成的完整流程。
最近在做 在线Game平台 的自动化系统时,我给平台加了一个小功能:每当有新游戏上线,系统会自动生成一条带标题、描述、链接的推文,发到 Twitter 账号上。整个过程全自动,无需人工干预。
这一篇就记录一下这个过程,从注册开发者账号到生成 API Key,最后让机器人发出第一条推文。
1. 注册 Twitter 开发者账号
首先要去 developer.twitter.com 申请一个 Developer Account。这个账号是所有 Twitter API 权限的入口。
进入页面后,它会问你「用途是什么」。我写的是:
"Personal automation to post new browser games updates from my website. The goal is to make it easier for users to discover free online games."
可以直接让gpt生成,注意必须达到250字符。
2. 选择 Basic(免费)计划
接着会让你选择套餐。这里不用犹豫,点底部的「Sign up for Free Account」就行。
免费计划(Basic Tier)支持:
- 每月 200 条推文(完全够用)
- 访问标准 v2 API
- 个人项目无需付费
对于我这种一天最多发 3~5 条游戏更新的场景,完全够用了。
3. 创建项目与 App
注册成功后,你会进入开发者后台(Developer Portal)。系统会自动帮你创建一个默认项目和 App,比如:
- Project: xxx_games
- App ID: 3********3
接下来我们需要做的是让这个 App 拥有「写推文」的权限。
4. 启用 User Authentication
在左侧点击:
Projects & Apps → [你的 App 名] → Settings
往下滑可以看到一栏:
User authentication settings
默认是 "not set up",说明还没启用。点击 Set up,然后按照以下配置填写:
项目 | 值 |
---|---|
App permissions | ✅ Read and Write |
Type of App | Web App, Automated App or Bot |
Callback URL | https://xxxxx.com |
Website URL | https://xxxxx.com |
保存之后,系统会生成一对新的 Client ID / Client Secret(OAuth 2.0),不用管,继续下一步。
5. 获取四个关键凭证(真正要用的)
在顶部切换到:
Keys and tokens
往下拉到 Authentication Tokens 区域,点击 Generate:
名称 | 作用 |
---|---|
API Key | 应用的识别码 |
API Key Secret | 应用密钥 |
Access Token | 授权账号凭证 |
Access Token Secret | 授权账号密钥 |
只显示一次,一定要立刻复制保存!
我在项目的 .env
里这样写的:
TWITTER_API_KEY=xxxx
TWITTER_API_SECRET=xxxx
TWITTER_ACCESS_TOKEN=xxxx
TWITTER_ACCESS_SECRET=xxxx
6. 验证权限
生成成功后,再次打开 "Keys and tokens" 页面,能看到:
Access level: Read and write
这行字说明你的 App 已经具备发推权限 ✅。
7. 发第一条自动推文
项目里我用的是官方 SDK:
npm install twitter-api-v2
测试代码:
import { TwitterApi } from 'twitter-api-v2';
const client = new TwitterApi({
appKey: process.env.TWITTER_API_KEY,
appSecret: process.env.TWITTER_API_SECRET,
accessToken: process.env.TWITTER_ACCESS_TOKEN,
accessSecret: process.env.TWITTER_ACCESS_SECRET,
});
await client.v2.tweet({
text: '🎮 New Game: Wacky Nursery 2\nPlay now: https://你的域名/wacky-nursery-2\n#Indie #SinglePlayer #PointandClick',
});
运行后,几秒内就能在账号上看到推文自动发出。
8. 集成到业务流程
在 我的游戏平台 的自动采集逻辑里,我让它在入库成功后立刻执行:
await saveGameToDatabase(gameData);
await publishToTwitter(gameData);
await sendTelegramNotify(gameData);
这样新游戏就能同时出现在数据库、Telegram 和 Twitter 上。整个流程干净利落,不需要额外队列,也不打断定时任务。
小结
到这里,一个完全自动化的「游戏上新 → 推特发布 → Telegram推送通知」流程就打通了。
步骤 | 内容 |
---|---|
注册开发者账号 | developer.twitter.com |
选择 Basic 免费计划 | 每月 200 条推文 |
设置权限 | Read and Write |
生成 API Keys & Access Tokens | 共 4 个 |
用 twitter-api-v2 发送推文 | 代码调用即可 |
集成入库逻辑 | 入库成功后自动推送 |
这一套流程看似繁琐,其实做一次就能复用。如果你有自己的产品、博客或网站,也可以让它像我一样「自己发动态」。
人不一定要 24 小时在线,但内容可以。