0
基本上,我可以通過代理通過hide.me成功地在特定網頁上運行此javascript命令,而我的最終目標是通過某種方式實現以下過程的自動化:在不同代理上通過控制檯自動執行Javascript執行
1)通過隨機代理服務器加載網站(不必是經由hide.me)
2)使用控制檯執行JavaScript命令
3)1和2使用重複不同的代理服務器
任何幫助將不勝感激
基本上,我可以通過代理通過hide.me成功地在特定網頁上運行此javascript命令,而我的最終目標是通過某種方式實現以下過程的自動化:在不同代理上通過控制檯自動執行Javascript執行
1)通過隨機代理服務器加載網站(不必是經由hide.me)
2)使用控制檯執行JavaScript命令
3)1和2使用重複不同的代理服務器
任何幫助將不勝感激
您可以使用無頭瀏覽器PhantomJS爲此。您可以使用他們的榜樣加載網站:
console.log('Loading a web page');
var page = require('webpage').create();
var url = 'http://phantomjs.org/';
page.open(url, function (status) {
//Page is loaded!
phantom.exit();
});
可以在command line arguments指定代理。
您可以通過使用page.evaluate
做的JavaScript調用:
page.open('http://www.httpuseragent.org', function(status) {
if (status !== 'success') {
console.log('Unable to access network');
} else {
var ua = page.evaluate(function() {
// or other js calls
return document.getElementById('myagent').textContent;
});
console.log(ua);
}
phantom.exit();
});
PhantomJS可以var page = require('webpage').create();
直到phantom.exit()
將被稱爲掛起。嘗試記錄你的page.open(status)
狀態,也許網站有問題。
這看起來很棒!我將如何做JavaScript調用?另外,phantomjs似乎掛在:var page = require('webpage')。create(); –
沒關係,我很笨,我完全沒看到);最後。它的工作原理,只需要弄清楚如何進行javascript函數調用。它們是特定於我正在訪問的網頁的功能,但在Chrome中的控制檯中,我可以將它們寫出來,就像在頁面的源代碼中調用它們一樣,當我按Enter時,它可以工作精細。編輯:只要看到你的編輯,我會給它一個鏡頭! –
在'page.evaluate'中運行它,例如在我的答案中:'document.getElementById('myagent')。textContent;'。你嘗試過嗎? –