Phantomjs - Cookies未启用错误

时间:2014-06-23 19:06:19

标签: cookies phantomjs

我对phantomjs很新。刚刚开始使用我工作的应用程序的无头自动化。不知何故,以下代码似乎适用于像hotmail,facebook等网站,但它不适用于我的测试应用程序。以下是我正在使用的代码: -

    var page = require("webpage").create();
    page.settings.userAgent="Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36"

    phantom.clearCookies();
    phantom.cookiesEnabled = true;

    var homePage = "https://www.somewebsite.com";
    page.open(homePage, function(status) {
    var url = page.url;
    console.log("Status:  " + status);
    console.log("Loaded:  " + url);

    page.evaluate(function(){
        document.getElementById('myUsername').value='username;
        document.getElementById('myPassword').value='password';
    });

    page.render("before.png");
    page.evaluate(function(){
        document.getElementById('myLoginButton').click();
    });

    setTimeout(function() {
        page.render("after.png");
        phantom.exit();
    }, 10000);

  });

我收到的错误消息是“您的浏览器已设置为阻止所有Cookie。请启用它们以登录网站。”

虽然我写了“phantom.cookiesEnabled = true;”这句话。它似乎没有启用它。我已经尝试过更改用户代理但没有运气。我错过了什么吗?

先谢谢, Harshit Kohli

1 个答案:

答案 0 :(得分:0)

对于任何可能面临此问题的人。为页面设置用户代理应该可以正常工作

page.settings.userAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:44.0) Gecko/20100101 Firefox/44.0"