care-screenshot
care-screenshot copied to clipboard
给我一个URL,我能将你关心的元素截图发给机器人🤖
使用
查看命令帮助:
$ ./care-screenshot exec -h
命令行工具,可使用此工具订阅一些你关心的网页服务状态,然后添加到定时任务中。
Usage:
care-screenshot exec [flags]
Flags:
-b, --bot string 机器人地址 (default "d63e3f22-3a88-43fb-a2ad-ad78ba5b43b5")
-e, --element string 给我你关心的页面元素 (default "#s_lg_img")
-g, --gao string 页面高度 (default "800")
-h, --help help for exec
-k, --kuan string 页面宽度 (default "1200")
-u, --url string 给我一个你想要截图的URL (default "https://baidu.com")
上手
如果我们想要拿到百度首页的logo,那么访问百度之后,点击检查,找到想要的元素:
- 进入页面,点击检查。
- 使用选择工具找到自己想要截图的区域。
- 右键点击对应元素的选项。
- 找到Copy。
- 选择
Copy selector
。
此时在剪切板中会复制到对应页面的元素标签。
然后就可以运行如下命令拿到我们想要的图片并自动发送到微信群:
$ ./care-screenshot exec -u 'https://www.baidu.com' -e '#s_lg_img' -k 800 -g 800
然后就能在群里看到程序截的图了。
实践
再举个栗子,比如我们经常做一些变更,希望通过日志能观测到变化,但是总去kibana
看不太方便,就可以订阅一下关心的图,比如我想要这个dashboard
中状态码5xx
的框框,注意:尽量使用资源的短链接。
$ ./care-screenshot exec -u 'http://10.6.6.5:5601/goto/d700abb7461c1e5b91cf5c6579a15b69' -e '#dashboardViewport > div > div > div:nth-child(2) > div' -k 2000 -g 800
接着就能在群里看到对应区块的截图了:
容器
程序在主机上运行的时候,如果检查到运行环境不满足需求,会自动下载相关依赖,如果你想来去无痕地运行程序,可以使用如下程序运行:
docker run -it --rm registry.cn-hangzhou.aliyuncs.com/ali_eryajf/chrome-go-rod:v0.0.1 care-screenshot exec -u 'https://www.baidu.com' -b '你的企业微信机器人后缀地址' -e '#s_lg_img' -k 800 -g 800
注意:
请将企业微信机器人地址替换成你自己的,否则图片将会发往默认的群。
通过这种方式,也方便我们将程序放到系统定时任务中定期拿到我们关心的数据了。
感谢
感谢如下优秀的项目:
另外
- 如果觉得项目不错,麻烦动动小手点个⭐️star⭐️!
- 如果你还有其他项目或者需求,欢迎在issue中交流!
- 程序还有很多bug,部分页面可能截图失败,可重试一波,如果还失败,那就与我一起来维护这个项目吧!