我正在使用flutter webview插件来尝试从一个需要登录的网站上进行webscrape链接。一旦用户登录并被重定向,我想访问网站的内容。是否可以直接在webview插件中实现?
首先你可以通过执行javascript evalJavaScript
来填写用户名密码。然后你就可以收听 onUrlChanged
后的用户重定向,并获得你想要的页面内容。
从 文件:
使用
flutterWebviewPlugin.evalJavaScript(String code)
. 该功能必须在页面加载完成后运行(即听从于onStateChanged
用于状态为 finishLoad 的事件)。)如果你有大量的JavaScript要嵌入,请使用资产文件。
实际上 evalJavaScript
返回一个 Future<String>
所以你必须 await
它或使用 .then( () {} )
.
例如:
String data_from_webview = await flutterWebviewPlugin.evalJavaScript("document.getElementById('#someElement').innerText");