2013-03-03 3 views
0

После попытки этот ответ How to login into a website with CasperJS? я не работал, видимо, функция заполнения является один недостаток Теперь facebook не Emai, и передать в качестве прямых детей login_form это влияет на код? Я не понял, он останавливается на this.test.assert ... моего кодаCasperJS Вход в Facebook

var casper = require('casper').create({ 
    pageSettings: { 
     loadImages: false,   // The WebPage instance used by Casper will 
     loadPlugins: false,   // use these settings 
     userAgent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4' 
    } 
}); 
var url = 'https://www.facebook.com/'; 

casper.start(url, function() { 
    console.log("page loaded"); 
    this.test.assertExists('form#login_form', 'form is found'); 
    this.fill('form#login_form', { 
     email: 'email', 
     pass: 'pass' 
    }, true); 
}); 

casper.then(function() { 
    this.evaluateOrDie(function() { 
     return /message sent/.test(document.body.innerText); 
    }, 'sending message failed'); 
}); 

casper.run(function() { 
    this.echo('message sent').exit(); 
}); 

В случае нет ответов я получил то, что мне нужно работать с PhantomJS только

ответ

0

версии проблема, не ясно, в чем была проблема.

0

Изменить вызов phantomjs в файле batchbin/casperjs.bat от

call phantomjs "%CASPER_BIN%bootstrap.js" --casper-path="%CASPER_PATH%" --cli %ARGV% 

в

call phantomjs --ignore-ssl-errors=yes "%CASPER_BIN%bootstrap.js" --casper-path="%CASPER_PATH%" --cli %ARGV% 

Это просто заставляет ignore-ssl-errors на каждом вызове phantomjs, что для моего случая использования было хорошо. Это не исправить, просто взломать.

https://github.com/n1k0/casperjs/issues/49