用casperjs截取任意网页区域

随着网络技术的发达,我们越来越多的用到截图功能。windows上面有非常人性化的QQ截图。浏览器里也有方便的截图插件。今天宝哥来教你怎么用代码截取网页存为图片。这对于一些出于各种目的写自动化脚本的,还有一些Linux用户来说,还是很需求的。而且,即使是windows用户,对一个网页需要滚屏才能显示完的内容来说,要用截图工具来边滚边截还是很(Mei)有(You)难(Ke)度(Neng)的。

phantomjs有个api,就是专门做截图的。但它只能截取网页和指定区域截图,而有个非常常见的需求就是,我想截网页中的一块正文区域或者某块特定的区域,但我又不想去算它的坐标和长宽,怎么办?没关系,casperjs帮我们封闭了。它有casper.captureSelector这个api。我写了个支持命令行参数的casperjs脚本,放在了MagicScripts,叫capture.js

用法

casperjs /path/to/capture.js page_url filename.png [selector] 。

  • 首先,你肯定要安装casperjs
  • 第一个参数是网页的网址
  • 第二个截取屏幕后的存储的文件的名
  • 第三个参数是选择器,比如'.main','.content','#data-list'之类的(支持CSS3选择器)。此参数是可选的,如果指定了,就只会截取该选择器命中的区域。否则,就截取整个网页。

感兴趣的可以点前面的链接前往git上查看代码。如果有自定义需求(比如,支持指定坐标区域截图),可以fork代码自由定制。

(转载本站文章请注明出处 开发部落 - sudodev.cn
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值