我要評估本網站上的JavaScript鏈接的頁面中的元素:評估只有JavaScript使用phantomjs
例如,我有這樣的元素:
<li class="language">
<a id="ctl00_btnLang" href="javascript:__doPostBack('ctl00$btnLang','')">English </a>
<img src="/CSS/images/langArwEn.gif" alt="Language Arrow" /></li>
所以,我試圖使用phantomjs來評估它,使用this code:
var page = require('webpage').create();
var fs = require('fs'),
system = require('system');
page.open('http://www.egypt.gov.eg', function (status) {
if (status !== 'success') {
console.log('Unable to access network');
} else {
var p = page.evaluate(function() {
return document.getElementsByID('html')[0].innerHTML
});
fs.write('out.htm', p, 'w');
console.log(p);
}
phantom.exit();
});
但它不評估HTML,它只是按原樣返回。那麼有沒有一種方法可以使用phantomjs來評估整個頁面的html,並且有沒有一種方法可以將JavaScript的各個元素逐一進行評估?
我不太瞭解你的目的。你的意思是自動執行'__doPostBack'然後抓取頁面? – CodeColorist
是的,這就是我基本上需要 – hmghaly
和一般情況下,如果我在href中找到一段javascript,如何處理它以檢索它指向的頁面? – hmghaly