自动网站截屏软件是一款基于Python开发的工具,能够按照设定的时间自动打开指定的网站并进行全屏截图。
- Excel配置:从
config.xlsx读取网站链接和定时任务 - 自动浏览器操作:使用Chrome浏览器自动打开网站
- 全屏截图:使用PyAutoGUI进行全屏捕获
- 分层目录保存:按照
screenshots/日期/时间点/格式保存图片 - 自定义文件名:文件名格式为
链接名称_时间点.jpg - 水印功能:支持添加自定义水印
- 登录支持:通过浏览器配置文件保存登录状态
- 最大化窗口:浏览器以最大化模式打开
- 禁用自动化提示:避免浏览器显示自动化控制提示
- 日志记录:详细的日志记录,便于故障排查
- 系统托盘:提供系统托盘图标和退出选项
- 可打包成exe:支持使用PyInstaller打包成独立的可执行文件
- Python 3.8+
- Chrome浏览器
-
安装依赖包:
pip install -r requirements.txt
-
配置Excel文件:
- 修改
config.xlsx文件,添加需要截图的网站信息 - 表格包含三列:
链接名称、URL、时间点 - 时间点格式:
HH:MM,如09:00、14:30
- 修改
-
配置浏览器(首次使用):
- 运行程序后,浏览器会自动打开
- 手动登录需要登录的网站
- 关闭浏览器,配置会自动保存
python main.py# 基本打包
python setup.py build_exe
# 打包前清理旧文件
python setup.py build_exe --clean打包完成后,可执行文件将位于 dist 目录下,文件名为 AutomaticScreenshotTool.exe。
{
"page_load_wait_time": 10,
"screenshot_dir": "screenshots",
"filename_format": "{name}_{datetime}",
"datetime_format": "%Y%m%d_%H%M%S",
"chromedriver_path": "",
"enable_watermark": false,
"fullscreen_capture": true,
"keep_browser_open": true,
"use_incognito_mode": false,
"screen_index": 0,
"run_on_startup": true
}| 配置项名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
page_load_wait_time |
整数 | 10 | 页面加载等待时间(秒),确保页面完全加载后再截图 |
screenshot_dir |
字符串 | "screenshots" | 截图保存根目录,截图将按日期和时间点组织存放 |
filename_format |
字符串 | "{name}_{datetime}" | 截图文件名格式,{name} 是网站名称,{datetime} 是当前时间 |
datetime_format |
字符串 | "%Y%m%d_%H%M%S" | 时间格式化字符串,用于生成文件名中的时间部分 |
chromedriver_path |
字符串 | "" | ChromeDriver路径,留空则使用Selenium自动管理 |
enable_watermark |
布尔值 | false | 是否添加水印,true表示添加,false表示不添加 |
fullscreen_capture |
布尔值 | true | 是否截取全屏,true表示截取电脑屏幕全屏,false表示截取浏览器窗口 |
keep_browser_open |
布尔值 | true | 是否保持浏览器窗口打开,true表示截图后不关闭浏览器,false表示关闭 |
use_incognito_mode |
布尔值 | false | 是否使用无痕模式,true表示使用无痕模式,false表示正常模式 |
screen_index |
整数 | 0 | 要截取的显示器索引,0表示主显示器,1表示第二个显示器,以此类推 |
run_on_startup |
布尔值 | true | 启动时是否立即执行截图任务,true表示立即执行,false表示只设置定时任务 |
| 链接名称 | URL | 时间点 |
|---|---|---|
| 示例网站1 | https://www.example.com | 09:00 |
| 示例网站2 | https://www.google.com | 14:00 |
截图将按照以下格式保存:
screenshots/YYYY-MM-DD/HH-MM/网站名称_时间戳.jpg
例如:
screenshots/2025-12-19/09-00/示例网站1_20251219_090000.jpg
日志文件保存在 logs 目录下,文件名为 screenshot_tool.log,使用时间轮转方式管理:
- 日志级别:INFO、WARNING、ERROR
- 日志格式:包含时间、级别、消息
- 每日自动创建新的日志文件,保留最近30天
- 同时在控制台输出日志信息
- 程序使用Chrome浏览器进行截图
- 浏览器配置文件保存在
chrome_user_data目录下,用于保存登录状态 - 浏览器以最大化模式打开
- 禁用了浏览器的自动化控制提示
解决方案:
- 确保Chrome浏览器已安装
- 确保Chrome浏览器版本与ChromeDriver版本匹配
- 检查网络连接,确保能够下载ChromeDriver
解决方案:
- 检查网络连接
- 增加
page_load_wait_time配置,延长页面加载等待时间 - 检查网站URL是否正确
解决方案:
- 确保浏览器以最大化模式打开
- 检查屏幕分辨率设置
- 调整
page_load_wait_time配置,延长页面加载等待时间
解决方案:
- 确保首次运行时手动登录了网站
- 检查
chrome_user_data目录是否有写入权限 - 避免使用隐身模式
解决方案:
- 通过系统托盘右键菜单退出
- 如果托盘图标无响应,可以通过任务管理器结束进程
- Python 3.8+
- Selenium WebDriver
- PyAutoGUI
- Pillow
- openpyxl
- schedule
- pystray
- logging
- 初始版本发布
- 支持Excel配置
- 自动截图功能
- 水印功能
- 日志系统
- 登录支持
- 最大化窗口
- 禁用自动化提示
- 解决退出问题
- 支持打包成exe文件