在Windows VPS上部署Puppeteer网页抓取机器人并实现12小时定时运行求助
部署Puppeteer爬虫到Windows VPS并设置定时任务
一、准备VPS环境
- 安装Node.js:
- 打开Windows VPS远程桌面,下载Node.js的LTS版本(长期支持版兼容性更好)。
- 安装时务必勾选「Add to PATH」选项,确保后续能在命令行直接调用
node和npm。 - 验证安装:打开cmd,输入
node -v和npm -v,能正常显示版本号即为安装成功。
二、部署爬虫代码
- 传输代码:把本地爬虫代码打包成ZIP,通过远程桌面文件复制或FTP工具传到VPS,解压到指定文件夹(比如
C:\puppeteer-spider)。 - 安装依赖:
- 打开cmd,进入代码目录:
cd C:\puppeteer-spider - 执行
npm install安装项目依赖。如果Puppeteer安装失败,尝试指定Chrome版本:npm install puppeteer --chromium-version=114.0.5735.198(版本号可按需调整)。
- 打开cmd,进入代码目录:
- 测试运行:
- 修改爬虫脚本的Puppeteer配置,适配服务器环境:
const browser = await puppeteer.launch({ headless: "new", // 或true,根据Puppeteer版本选择 args: ['--no-sandbox', '--disable-setuid-sandbox'] // 解决Windows服务器Chrome启动权限问题 }); - 在cmd执行
node your-spider-script.js,确认爬虫能正常运行并输出结果。
- 修改爬虫脚本的Puppeteer配置,适配服务器环境:
三、设置12小时定时任务(Windows任务计划程序)
- 打开任务计划程序:按下Win+R,输入
taskschd.msc回车。 - 创建基本任务:
- 点击右侧「创建基本任务」,命名(比如「Puppeteer定时爬虫」),添加描述后点击下一步。
- 触发器选择「每天」,下一步;设置起始日期,将「重复任务间隔」改为12小时,「持续时间」选「无限」,下一步。
- 操作选择「启动程序」,下一步;
- 「程序或脚本」:填入node.exe的完整路径,一般为
C:\Program Files\nodejs\node.exe(安装路径不同则自行调整)。 - 「添加参数(可选)」:填入爬虫脚本的完整路径,比如
C:\puppeteer-spider\your-spider-script.js。 - 「起始于(可选)」:填入脚本所在文件夹路径,比如
C:\puppeteer-spider(避免路径相关错误)。
- 「程序或脚本」:填入node.exe的完整路径,一般为
- 勾选「当单击完成时,打开此任务属性的对话框」,点击完成。
- 优化任务属性:
- 在任务属性窗口的「常规」标签,勾选「不管用户是否登录都要运行」和「使用最高权限运行」(避免权限不足导致爬虫失败)。
- 切换到「设置」标签,可勾选「如果任务失败,每隔5分钟重试一次」,最多重试3次(提升稳定性)。
- 测试定时任务:右键任务选择「运行」,通过日志或输出文件验证爬虫是否正常执行。
常见问题排查
- 任务未执行:查看任务计划程序的「历史记录」标签获取错误信息;确认脚本路径、node路径是否正确;检查权限是否设置为最高权限。
- Chrome启动失败:确保脚本添加了
--no-sandbox参数;若仍失败,可手动安装Chrome到VPS,然后在Puppeteer中指定路径:const browser = await puppeteer.launch({ executablePath: 'C:\Program Files\Google\Chrome\Application\chrome.exe' }); - 依赖安装失败:检查VPS网络是否正常,或切换国内npm镜像:
npm config set registry https://registry.npmmirror.com,再执行npm install。
内容的提问来源于stack exchange,提问作者Saba Madadinia
相关产品推荐
相关产品推荐

