Flutter WebView:从呈现的 URL 中检索所有完全生成的 html(类似于 "Inspect Element")
Flutter WebView: Retrieve ALL fully generated html from a rendered URL(Similar to "Inspect Element")
我正在尝试从 this webpage 获取事件的标题并将它们放入列表中:
,我决定尝试使用 flutter_webview_plugin
来:
- 在隐藏的网络视图中加载所需的URL
- 提取完全生成的HTML
- 解析 HTML 以获得我需要的标题
我正在使用此代码加载 webview:
flutterWebviewPlugin.launch(
"https://www.volunteermatch.org/search/?l=Long%20Grove,%20IL%2060047,%20USA",
hidden: true);
flutterWebviewPlugin.onStateChanged.listen((viewState) async {
if (viewState.type == WebViewState.finishLoad) {
flutterWebviewPlugin
.evalJavascript("document.documentElement.outerHTML")
.then((html) {
print(html);
//some code to parse html
flutterWebviewPlugin.close();
});
}
});
问题是即使在 webview 完成加载后使用 JavaScript 代码检索 HTML 也不会给我相同的 HTML Safari 上的“Inspect Element”会给出 ,none 的标题也在其中。我错过了什么?
好吧,现在我觉得很傻。
因为我是 运行 我 iPhone 上的应用程序,所以我使用 Xcode 检查 print(html)
的输出。出于某种原因,Xcode 没有打印出所有 html
字符串:
Xcode 只留下一个<...>
(右下角红圈),决定不打印其余部分。
我正在尝试从 this webpage 获取事件的标题并将它们放入列表中:
,我决定尝试使用 flutter_webview_plugin
来:
- 在隐藏的网络视图中加载所需的URL
- 提取完全生成的HTML
- 解析 HTML 以获得我需要的标题
我正在使用此代码加载 webview:
flutterWebviewPlugin.launch(
"https://www.volunteermatch.org/search/?l=Long%20Grove,%20IL%2060047,%20USA",
hidden: true);
flutterWebviewPlugin.onStateChanged.listen((viewState) async {
if (viewState.type == WebViewState.finishLoad) {
flutterWebviewPlugin
.evalJavascript("document.documentElement.outerHTML")
.then((html) {
print(html);
//some code to parse html
flutterWebviewPlugin.close();
});
}
});
问题是即使在 webview 完成加载后使用 JavaScript 代码检索 HTML 也不会给我相同的 HTML Safari 上的“Inspect Element”会给出 ,none 的标题也在其中。我错过了什么?
好吧,现在我觉得很傻。
因为我是 运行 我 iPhone 上的应用程序,所以我使用 Xcode 检查 print(html)
的输出。出于某种原因,Xcode 没有打印出所有 html
字符串:
Xcode 只留下一个<...>
(右下角红圈),决定不打印其余部分。