在CasperJS中捕获图像

时间:2015-06-24 15:17:04

标签: phantomjs casperjs

我目前正在使用CasperJS(在无头浏览器PhantomJS之上)进行网站抓取,我想从网站下载图片。

有两种方法,这两种方法都有详细记录,但它们都不适合我的目的。

我可以使用casper.capture()截取部分网站的屏幕截图,但图片前面显示的HTML元素会遮挡图片,因此不能选择 - 我需要原创图像来源。

当然,总有casper.download(),它确实有效,但只有当我使用--web-security=no运行casperjs时才会有效,这会带来安全风险,考虑到我在抓一个网站那不是我自己的。

casper.on("resource.received", fuction(resource){})似乎也不适合我的需求,因为它只给我图像元数据,而不是图像本身。

我尝试按照here的说明使用缓存系统,但这对我没有用。每当我尝试访问cache.cachedResources[index].getContents()时,我的casperjs由于未知原因而崩溃。使用代理也不是一个可行的解决方案。

如果有人知道在不禁用网络安全的情况下下载原始图片的方法,那将是非常感激的。请记住,我不一定需要将其保存到文件中,如果我可以访问CasperJS中的字节内容,那么这也很好。

谢谢!

0 个答案:

没有答案