我让所有东西都与 Ironworker 和 casperjs 一起工作,我还有一个步骤失败了:在此设置中启用 cookie 支持。
我使用 --cookies-file=cookies.txt
参数启动 casper,并且 cookie.txt 文件具有正确的权限,但不知何故,当我访问测试页面并截取它时,没有 cookie 支持。
知道如何使用IronWorker启用此功能吗?
基于 casperjs 示例但没有 phantomjs(它已经包含在 phantom-1.9 堆栈中)
Casper.worker:
runtime "binary"
stack "phantom-1.9"
exec "run.sh"
# Include the CasperJS library
dir "casperjs"
# Include the Javascript file that Casper will execute
file "simple.js"
run.sh:
casperjs/bin/casperjs --verbose --ignore-ssl-errors=yes --ssl-protocol=any --cookies-file=cookies.txt simple.js
简单.js:
var casper = require('casper').create();
casper.userAgent('Mozilla/5.0 (X11; Linux i586; rv:31.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.99 Safari/537.36')
casper.start('https://hud.iron.io/', function() {
this.fill('form[action="/sessions"]', { email: 'foo@bar.com', password: 'super_hard_pass' }, true);
this.click('input[name="commit"]');
this.echo(this.getTitle());
});
casper.wait('10000');
casper.thenOpen('https://hud.iron.io/account', function() {
this.echo(this.getTitle());
this.echo(this.evaluate(function() {return document.querySelector(".account-header").innerText}));
});
casper.run();