Skip to content

About

一个twitter agent机器人

Resources

Stars

3 stars

Watchers

0 watching

Forks

Latest commit

 

History

6 Commits

Folders and files

Repository files navigation

Twitter Agent - 智能推特机器人

模拟真实用户行为的智能Twitter机器人,像人一样使用Twitter:发推、回复、互动。

功能特性

🤖 核心功能

  • 智能发推:基于Monad数据生成专业推文
  • 自动回复:智能时间线监听和评论回复
  • 真实行为:模拟真实用户的使用习惯

🎯 智能特性

  • AI内容生成(基于Gemini AI)
  • 智能时间线监控
  • 自动垃圾内容过滤
  • 人性化活动间隔
  • 真实用户行为模拟

文件结构

核心模块

  • twitter_agent.py - 入口模块,根据环境变量选择项目 Agent
  • twitter_core/ - 可复用的 Twitter 基础能力(客户端、发布、时间线监控等)
  • projects/monad/ - Monad 项目的业务逻辑与 Agent 实现

启动脚本

  • run_twitter_agent.py - 主启动脚本(推荐使用)

配置文件

  • .env - 环境变量配置(参考 config/env.example)
  • requirements.txt - Python依赖包

输出文件

  • posted_tweets.txt - 已发布推文记录
  • commented_tweets.txt - 已评论推文记录
  • tuiwen.txt - 生成的推文内容

快速开始

1. 安装依赖

pip install -r requirements.txt

2. 创建必要文件

复制 config/env.example 为项目根目录 .env,填入真实的 Cookie、Authorization、Gemini Key 等信息。

3. 获取Twitter账号信息

  1. 登录你的Twitter账号
  2. 打开浏览器开发者工具 (F12)
  3. 切换到 Network 标签页
  4. 刷新页面,找到任意一个请求
  5. 复制请求头中的 Authorization 和 Cookie 值
  6. 将值填入上述配置文件中

4. 获取Gemini API密钥

  1. 访问 Google AI Studio
  2. 创建新的 API 密钥(可创建多把以组成池子)
  3. 将密钥填入 .env 中的 GEMINI_API_KEY 或 GEMINI_API_KEYS(多个用逗号分隔)

3. 运行程序

启动程序

python run_twitter_agent.py

程序功能

  • 自动发推:基于Monad生态调研内容生成并发布推文
  • 时间线监控:监控关注用户的时间线,自动回复相关推文
  • 智能分析:使用AI分析推文内容,生成有意义的回复
  • 人性化行为:模拟真实用户的使用习惯,避免被检测

程序行为

  • 发推频率:每10-15分钟随机检查一次,50%概率发推
  • 监控频率:每1-3分钟检查一次时间线
  • 发推间隔:至少间隔1分钟才会发新推文
  • 内容来源:主要基于Twitter上的Monad相关讨论

停止程序

按 Ctrl+C 停止程序运行

输出文件

程序运行时会生成以下文件:

  • tuiwen.txt - 记录所有发布的推文
  • commented_tweets.txt - 记录所有回复的推文ID

使用说明

真实用户行为模拟

  • 智能发推:随机发推,基于Monad数据生成内容
  • 自动回复:定期检查时间线,智能回复相关推文
  • 人性化间隔:模拟真实用户的活动频率和习惯
  • 智能决策:根据时间、内容等因素决定是否发推或回复

工作流程

  1. 初始化:加载Twitter客户端和AI模型
  2. 持续运行:像真实用户一样持续使用Twitter
  3. 智能决策:根据时间和活动历史决定下一步行动
  4. 内容生成:使用AI生成高质量的推文内容
  5. 自动互动:智能回复和评论其他用户的推文

配置说明

  • AI模型:Google Gemini 2.0 Flash
  • 推文长度:150-250字符
  • 发帖间隔:至少3分钟,随机决定
  • 时间线检查:每3-10分钟随机检查
  • 评论策略:智能过滤,人性化回复

Gemini 密钥池说明

  • GEMINI_API_KEYS 支持配置多把密钥(逗号分隔),系统会自动轮换并在限流时退避。
  • 如仅配置 GEMINI_API_KEY,将作为单把密钥使用。
  • 建议至少准备 2-3 把密钥以提升稳定性。

注意事项

  1. 必须在 .env 中正确配置 Twitter 认证信息和 Gemini API Key
  2. 首次使用建议先测试单次发推
  3. 长期运行需要稳定的网络环境
  4. 遵守Twitter使用规则,避免频繁操作
  5. 建议使用代理服务器提高稳定性

技术架构

  • 异步编程:使用asyncio提高性能
  • 模块化设计:各功能独立,易于维护
  • 统一管理:客户端和配置统一管理
  • 错误处理:完善的异常处理机制
  • 资源管理:自动清理和资源释放

About

一个twitter agent机器人

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages