0

有一个网站(使用 https 协议),我可以在网络浏览器中使用用户名和密码登录。现在我想写一个后端程序来模拟这个登录动作。怎么做?给我一些想法。

更新:还有很多 javascript ,是否可以使用 curl 来做这件事?curl是否可以提供js运行时环境?如果没有,如何解决javascript的事情?

4

1 回答 1

1

几个月前我遇到了同样的问题,当时我使用phantomjs解决了这个问题。如果您是 Linux 用户并且熟悉 CLI,那么使用此工具非常容易。如果您是 Windows 或 Mac 用户,那么它也必须易于使用。

这是我以前写的一个示例 phantomjs 代码。这将加载一个网页和 local.js JavaScript 文件。之后我们可以编写普通的 JavaScript 代码来访问和操作 DOM。

var page = require("webpage").create();
    page.open("http://localhost/localdir", function() {
        page.includeJs("http://localhost/local.js",
                function() {
                    var xml = page.evaluate(function() {
                        x = window.XML_VAR;
                        return x;
                    });
                    var json = page.evaluate(function() {
                        y = window.JSON_VAR;
                        return y;
                    });
                    var title = page.evaluate(function(){
                        z = document.getElementById("title").innerHTML;
                        return z;
                    });
                    console.log(json);
                    console.log(xml);
                    console.log(title);
                    phantom.exit()
                });
});
于 2013-08-30T16:41:49.093 回答