有些情况下,网站会在浏览器中询问此表单中的用户名和密码(附上照片)。是否可以使用Casper.js填写此内容?
Casper.fill只能在HTML表单中执行此操作。 http://casperjs.org/api.html#casper.fill
更新1:
我尝试了这个并且没有用。
var casper = require("casper").create({
pageSettings: {
userName: "myusername",
password: "mypassword"
}
});
此登录框位于Windows 7中,因为我使用了代理,因此弹出了它。我必须这样做的原因是因为casperjs --proxy=x.x.x.x --proxy-auth=u:p
不起作用(至少在Win7上)
答案 0 :(得分:2)
从截图中,您似乎正在处理HTTP基本身份验证。如果是这种情况,那么您应该能够使用以下网址格式:
http://username:password@www.example.com/path
虽然,我没有测试它是否适用于CasperJS
答案 1 :(得分:0)
您应该可以使用setHttpAuth()
功能:
var casper = require("casper").create();
casper.start();
casper.setHttpAuth('sheldon.cooper', 'b4z1ng4');
casper.thenOpen('http://password-protected.domain.tld/', function() {
this.echo("I'm in. Bazinga.");
});
casper.run();