有没有办法在phantomJs甚至QtWebKit / webkit中禁用加载子帧? 如果有必要,我没有问题与源代码集中。 我正在做一些网页操作,但我不需要iframe的内容,只会减慢加载时间。
我知道它可以在Mozilla中完成。
webSetup->SetProperty(nsIWebBrowserSetup::SETUP_ALLOW_SUBFRAMES,PR_TRUE);
但到目前为止,我没有在QtWebKit中找到任何可以执行此操作的内容。
也许有一种方法可以使用 onResourceRequested 来仅阻止对iframe的请求?
答案 0 :(得分:4)
这似乎有效:
// load only the main page, no iframes
page.onLoadStarted = function() {
page.navigationLocked = true;
};
如果需要,可以在页面加载后再次解锁。
或者,可以使用它来阻止加载任何资源:
var req_count = 0;
page.onResourceRequested = function(requestData, networkRequest) {
if (req_count++ > 0) {
networkRequest.abort();
}
}
另见:
http://phantomjs.org/api/webpage/handler/on-resource-requested.html http://newspaint.wordpress.com/2013/04/03/adblock-for-phantomjs/