ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

javascript – CasperJS截图只是页面的一小部分

2019-06-12 04:24:45  阅读:237  来源: 互联网

标签:javascript casperjs


captureSelector()的CasperJS文档没有说明如何设置屏幕截图的大小.默认情况下(至少在我的系统上使用webkit,Windows 8)似乎是截取页面左上角的一个小屏幕截图.

我在找错了地方吗?

我发现viewportSize.我认为这是我需要的,但有没有人有代码可以将其设置为合理的默认值(如100%)?

FYI this.viewport(‘100%’,’100%’);只是挂起,所以我认为它不需要%.

我是否必须注入将窗口宽度和高度返回到页面中的代码并将其传回以提取它或者是否有更简单的方法?

解决方法:

casper.captureSelector()应该截取您选择的元素的屏幕截图.如果你想截取整个页面的截图,你需要使用casper.capture().

请注意,PhantomJS的默认viewportSize为400×300.某些页面未正确调整大小,因此页面的一部分不可见.你需要将它设置为类似于桌面的东西:

var casper = require('casper').create({
    viewportSize: {width: 1280, height: 800}
});

没有办法让它100%.您可以做的是读出页面正文的宽度,并相应地设置视口到casper.viewport().

var width = 1280;
casper.start(url, function(){
    width = this.evaluate(function(){
        return document.body.clientWidth;
    });
}).viewport(width, 800).then(function(){
    this.capture("screenshot.png");
}).run();

标签:javascript,casperjs
来源: https://codeday.me/bug/20190612/1223176.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有