一个模拟真实用户行为的自动化脚本,用于完成 linux.do 论坛的日常浏览任务。
- 人性化随机行为: 模拟真实用户的浏览习惯,避免被检测
- 工作时间段运行: 默认在 9:00-18:00 运行
- 支持互动操作: 浏览帖子 + 偶尔点赞
- 跨平台支持: 支持 Windows 和 Linux
npm installnpx playwright install chromium运行登录脚本,在打开的浏览器中手动登录:
npm run login登录成功后按 Enter 键保存登录状态。
开发模式(直接运行 TypeScript):
npm run dev生产模式(先构建再运行):
npm run build
npm start配置文件位于 src/config.ts,主要配置项:
| 配置项 | 说明 | 默认值 |
|---|---|---|
activeHours.start |
活跃时段开始时间 | 9 |
activeHours.end |
活跃时段结束时间 | 18 |
dailyTargets.minTopics |
每日最少浏览帖子数 | 20 |
dailyTargets.maxTopics |
每日最多浏览帖子数 | 50 |
interaction.likeProbability |
点赞概率 | 0.05 (5%) |
browser.headless |
无头模式 | true |
linux-do-auto/
├── src/
│ ├── index.ts # 主入口
│ ├── config.ts # 配置文件
│ ├── scheduler.ts # 时间调度器
│ ├── browser.ts # 浏览器引擎
│ ├── humanizer.ts # 人性化行为模块
│ ├── actions.ts # 具体操作
│ ├── login.ts # 登录脚本
│ └── logger.ts # 日志模块
├── storage/ # 登录状态(不提交到 Git)
├── logs/ # 日志文件
├── docs/
│ └── design.md # 设计文档
├── package.json
├── tsconfig.json
├── CLAUDE.md # 开发指南
└── README.md # 本文件
# 安装 PM2
npm install -g pm2
# 构建项目
npm run build
# 启动
pm2 start dist/index.js --name "linux-do-auto"
# 保存配置
pm2 save
# 设置开机自启
pm2 startuppm2 logs linux-do-auto- 账号安全: 使用自动化可能违反网站服务条款,存在封号风险
- 登录状态: 登录状态可能过期,需要定期重新登录
- 不要提交敏感文件:
storage/目录包含登录凭证,已在.gitignore中排除
MIT