CasperJS视口& viewportSize没有调整浏览器的大小

时间:2015-04-29 15:06:07

标签: javascript phantomjs viewport casperjs

最近是否有人对CasperJS或PhantomJS viewportviewportSize有任何疑问?

我尝试过使用

page.viewportSize = {width: 1280, height: 1024};
casper.start()
      .viewport(800, 600);
casper.options.viewportSize = {width: 1290, height: 1024};

无论我把它们放在代码中,浏览器大小仍然保持默认值300,400。

/*jshint strict:false*/
/*global CasperError, console, phantom, require*/

var links = [];
var casper = require("casper").create();
var w = window.innerWidth;
var h = window.innerHeight;


function getLinks() {
    var links = document.querySelectorAll("h3.r a");
    return Array.prototype.map.call(links, function(e) {
        try {
            // google handles redirects hrefs to some script of theirs
            return (/url\?q=(.*)&sa=U/).exec(e.getAttribute("href"))[1];
        } catch (err) {
            return e.getAttribute("href");
        }
    });
}

casper.options.viewportSize = {width: 1600, height: 950};

casper.start("http://google.fr/", function() {
    // search for 'casperjs' from google form
    this.viewport(900, 800);
    this.fill('form[action="/search"]', { q: "casperjs" }, true);
});

casper.then(function() {
    // aggregate results for the 'casperjs' search
    links = this.evaluate(getLinks);
    // now search for 'phantomjs' by fillin the form again
    this.fill('form[action="/search"]', { q: "phantomjs" }, true);
});

casper.then(function() {
    // aggregate results for the 'phantomjs' search
    links = links.concat(this.evaluate(getLinks));
});


console.log("Height==> " + h);
console.log("Width==> " + w);


casper.run(function() {
    // echo results in some pretty fashion
    this.echo(links.length + " links found:");
    this.echo(" - " + links.join("\n - "));
    this.exit();
});

0 个答案:

没有答案