Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Run phantomjs with --ignore-ssl-errors=true from casperjs

I have a problem with https page. Page is completly ok, it exist but phantomjs tell me something else: 'loading resource failed with status fail'. I read about it for a while and for now i know it's phantomjs bug and the solution to this problem is:

--ignore-ssl-errors=true

So I know solution, but don't how to use it. How can I pass this to phantomjs from casper? Where should I do that ?

EDIT:

Entire code:

var casper = require('casper').create({
        verbose: true,
        logLevel: 'warning',
        pageSettings: { javascriptEnabled:  true },
        viewportSize: {width: 1024, height: 768}
    });

    var url = 'http://us3.php.net/manual/en/function.explode.php',
        xp = require('casper').selectXPath;

    // ### AKCJE PODSTAWOWE ###
        casper.start(url);

            casper.userAgent('Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0');

            casper.then(function(){this.captureSelector('logi/img1.png', 'body');});

            casper.then(function(){ this.sendKeys(xp('/html/body/nav/div/div/div/form/span/input[2]'),'test18');});

            casper.then(function(){this.captureSelector('logi/img2.png', 'body');})

            casper.thenClick(xp('/html/body/div[3]/div/section/div/div[2]/a[1]'));

            casper.wait(2000);
            casper.then(function(){this.captureSelector('logi/img3.png', 'body');})

            casper.run(function(){ this.exit(); }); 
like image 669
Piotr Wójcik Avatar asked Nov 27 '13 12:11

Piotr Wójcik


2 Answers

As per https://casperjs.readthedocs.org/en/latest/cli.html#casperjs-native-options

Last but not least, you can still use all PhantomJS standard CLI options as you would do with any other phantomjs script:

$ casperjs --web-security=no --cookies-file=/tmp/mycookies.txt myscript.js

So, I guess, it would be

casperjs --ignore-ssl-errors=true yourjsapp.js 
like image 200
sudipto Avatar answered Oct 19 '22 04:10

sudipto


Was having the same issue with a site that was previously working but then suddenly stopped working with the "Loading resource failed with status=fail:" message.

I hadn't changed versions of anything nor my script so something must have changed on the server side. Ultimately, the fix for me was to set the following option:

--ssl-protocol=tlsv1

This link was useful in giving some different options to try: https://github.com/n1k0/casperjs/issues/49

Other suggestions on the page were:

--ignore-ssl-errors=true
--ssl-protocol=any
like image 32
james Avatar answered Oct 19 '22 03:10

james