windows 下使用 bat 批处理运行 Chrome 无头模式刷一波访问量

🗺️ 需求背景

集团考核各子公司辖内员工对指定网页的访问量,为了排名不至于垫底😔,于是琢磨如何简单有效地刷点流量。原理就是定期执行脚本,调用系统浏览器(默认为 Chrome)打开指定 URL。为了不影响牛马的日常工作(突然弹出浏览器是有点吓人😄),选择使用无头模式。

🫥 Chrome 无头模式

Chrome 无头模式是一种 在没有图形界面的情况下运行 Chrome 浏览器 的模式。它常用于 自动化测试、网页抓取、性能分析、截图 / PDF 生成等场景,因为它比启动完整 GUI 浏览器更轻量、速度更快,也可以运行在没有显示器的服务器环境中。

如何开启

如需使用无头模式,请传递 --headless 命令行标志:chrome --headless。

示例

shell 复制代码
chrome --headless --disable-gpu --remote-debugging-port=9222 https://example.com

常用参数:

参数 说明
--headless 开启无头模式
--disable-gpu 禁用 GPU 加速(部分平台需要)
--remote-debugging-port 开启远程调试端口
--no-sandbox (Linux 容器里常用)禁用沙箱

👨‍💻 完整代码

bat 复制代码
@echo off
for /f %%p in ('powershell -Command "Start-Process chrome.exe -ArgumentList '--headless --disable-gpu http://localhost:3000/' -PassThru | %%{$_.Id}"') do (
    set "pid=%%p"
)
timeout /t 5 >nul
taskkill /pid %pid% /f

我们用 powershell 启动进程,直接拿到 PID,等待 5 秒后,关闭进程。

进阶版

我们改造上述脚本,改成一个可重复调用的通用模板(传入 URL、延时秒数等参数)。

bat 复制代码
@echo off
setlocal enabledelayedexpansion

:: 检查参数
if "%~1"=="" (
    echo 用法: %~nx0 [URL] [秒数]
    echo 示例: %~nx0 https://example.com 5
    exit /b 1
)
set "URL=%~1"

if "%~2"=="" (
    set "DELAY=5"
) else (
    set "DELAY=%~2"
)

:: 用 PowerShell 启动 Chrome 无头模式并拿到 PID
for /f %%p in ('
    powershell -Command "Start-Process chrome.exe -ArgumentList '--headless --disable-gpu %URL%' -PassThru | %%{$_.Id}"
') do (
    set "PID=%%p"
)

if not defined PID (
    echo 无法启动 Chrome,请检查是否已安裝 chrome.exe 並配置到 PATH
    exit /b 1
)

echo Chrome 已启动 (PID=%PID%),将在 %DELAY% 秒后关闭...

:: 等待指定秒数
timeout /t %DELAY% >nul

:: 关闭进程
taskkill /pid %PID% /f >nul 2>&1
echo Chrome 已关闭

endlocal

使用示例:chrome_headless.bat https://example.com 5

相关推荐
爱勇宝37 分钟前
年轻时,给自己培养一个能留下作品的爱好
程序员
imperialeast10 小时前
WinAXP 2.4.0.828正式版
windows
周小董12 小时前
[1369]Windows上安装PostgreSQL
数据库·windows·postgresql
doujiaozh13 小时前
Win7 复活记:用 3 个补丁让 13 年前的老电脑跑通 Kimi API
windows
高晶13 小时前
Android 新手实战:从零搭建 WebRTC 在线直播系统
android·程序员
寒狼GPT17 小时前
Codex 5小时额度是固定重置还是滚动恢复?为什么每个人Reset时间不一样
chatgpt·程序员·ai编程
newerp18 小时前
GC Pacer 调优算法:GOGC、GOMEMLIMIT 与容器 OOM 防御
后端·程序员·go
newerp18 小时前
逃逸分析、栈分配与 sync.Pool 对象池
后端·程序员·go
bbq烤鸡19 小时前
Win11 资源管理器“白条“修复报告
windows
kyriewen19 小时前
我逐个测了 JSON.stringify 的 7 个坑:第 1 个就在丢数据
前端·javascript·程序员