webscreenshot扩展功能:添加URL标签、自定义JS注入与图片格式转换技巧
webscreenshot是一款简单实用的网站截图工具,能够帮助用户快速捕获多个网站的截图。本文将详细介绍如何利用其扩展功能,包括添加URL标签、自定义JS注入以及图片格式转换,让你的截图工作更加高效和个性化。
一、快速添加URL标签:让截图信息更完整 🌟
在进行批量网站截图时,有时会难以区分不同截图对应的网站。webscreenshot提供了URL标签功能,可在截图中添加网站地址,使截图更具辨识度。
1.1 一键启用URL标签
只需在命令中添加-l或--label参数,即可为每张截图自动添加URL标签。例如:
python3 webscreenshot.py -i url_list.txt -o screenshots/ -l
1.2 自定义标签样式
你还可以通过以下参数调整标签样式:
--label-size:设置标签字体大小,默认60--label-bg-color:设置标签背景颜色,默认NavajoWhite
示例:
python3 webscreenshot.py -i url_list.txt -o screenshots/ -l --label-size 40 --label-bg-color "LightBlue"
此功能需要系统安装imagemagick工具,相关代码实现可查看webscreenshot.py。
二、自定义JS注入:灵活控制网页渲染 🚀
webscreenshot允许在截图前注入自定义JavaScript代码,从而实现对网页的灵活控制,如隐藏广告、修改页面元素等。
2.1 使用方法
通过--custom-js参数指定包含JS代码的文件路径:
python3 webscreenshot.py https://example.com --custom-js my_script.js -o output.png
2.2 JS注入实现原理
在webscreenshot.js中,程序会读取指定的JS文件并在截图前执行:
if (custjs)
{
var fs = require('fs');
var content = fs.read(custjs);
page.evaluateJavaScript(content);
}
2.3 实用JS示例
以下是一些常用的JS注入脚本示例:
- 隐藏页面元素:
// 隐藏所有广告
document.querySelectorAll('.ad').forEach(el => el.style.display = 'none');
- 修改页面样式:
// 将页面背景色改为白色
document.body.style.backgroundColor = 'white';
三、图片格式转换:满足多样化需求 📷
webscreenshot支持多种图片格式输出,可根据实际需求灵活选择。
3.1 支持的格式
使用-f或--format参数指定输出格式,支持的格式包括:pdf、png、jpg、jpeg、bmp、ppm(仅phantomjs渲染器支持)。
3.2 格式转换示例
# 输出为JPG格式
python3 webscreenshot.py https://example.com -o output.jpg -f jpg
# 输出为PDF格式
python3 webscreenshot.py https://example.com -o output.pdf -f pdf
3.3 质量调整
对于JPG等有损压缩格式,可使用-q或--quality参数调整图片质量(0-100):
python3 webscreenshot.py https://example.com -o output.jpg -f jpg -q 90
相关实现可查看webscreenshot.py中的参数定义。
四、综合应用示例
下面是一个综合运用上述扩展功能的示例命令:
python3 webscreenshot.py -i url_list.txt -o screenshots/ -l --label-size 40 --custom-js clean_ads.js -f jpg -q 85 --window-size 1920,1080
此命令将:
- 从url_list.txt读取网站列表
- 在screenshots目录下保存截图
- 添加URL标签,字体大小40
- 注入clean_ads.js脚本清理广告
- 输出JPG格式图片,质量85
- 设置截图窗口大小为1920x1080
通过这些强大的扩展功能,webscreenshot能够满足更多复杂的截图需求,提高工作效率。无论是网页存档、批量监控还是视觉分析,webscreenshot都是一个值得尝试的实用工具。
要开始使用,只需克隆仓库:
git clone https://gitcode.com/gh_mirrors/we/webscreenshot
然后按照项目文档进行配置和使用。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



