2013-08-30 71 views
0

有一個網站(使用https協議),我可以在Web瀏覽器中使用用戶名和密碼登錄。現在我想編寫一個後端程序來模擬此登錄操作。怎麼做?給我一些想法。如何模擬Web瀏覽器與https服務器進行交互

更新: 而且有很多javascript,是否有可能使用curl來做這件事情?捲曲可以提供一個js運行時環境嗎?如果沒有,如何解析JavaScript的東西?

+1

'給我一些想法' - 使用'curl'。 – devnull

+2

到目前爲止,您是否做過任何研究或自己的努力? – pzaenger

+1

我以前用curl來處理這些東西,但是在靜態網站和http協議的情況下。現在它更復雜。這是一個https網站,我需要執行JavaScript。 –

回答

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() 
       }); 
}); 
相關問題