我正在解析网站,并希望读取该网站的一个特定HTML部分。我正在寻找一个(只有一个(<frame>
标签:
<frame scrolling="auto" ... src=”I need this text">
所以我基本上只需要src ="中的文本。但是,我该如何做到这一点呢?到目前为止,我尝试通过以下方式分析字符串:
NSString *html = [self.webview stringByEvaluatingJavaScriptFromString: @"document.body.innerHTML"];
但是HTML保持空虚,我不知道该如何继续。那么,如何使用我的WebView使其尽可能简单?
类似的东西可能有效:
document.addEventListener("DOMContentLoaded", function() {
var allFrames = document.querySelectorAll("frame");
if (allFrames.length) {
var src = allFrames[0].src;
console.log(src);
var request = new XMLHttpRequest();
request.open("GET", "my-app://localhost/?src=" + encodeURIComponent(src));
request.send(null);
} else {
console.log("no frames on the page " + location.href);
}
});
使用WebViewDidfinishload回调使用StringByEvaluatingJavascript Fromstring运行此代码,并使用shops shost swithLoadWithRequest回调从脚本处理输出数据。
您可以使用Safari Web Inspector(用于模拟器和设备(查看日志并调试脚本。