我想快速构建一个iPhone / iPad iOS应用程序,以检查特定的URL,获取并解析HTML页面,但不公开UIWebView的Web界面视图。如果第一次显示HTML视图只是为了验证用户身份,然后每次以编程方式直接访问该页面,我将感到非常高兴。我认为可以使用的示例应用程序是适用于Hotmail和Outlook的MailBuzzr。
我需要某种Web抓取工具,但在某些情况下,例如http://login.live.com,获得输入非常麻烦,例如,非常复杂的输入表单,两步验证等。我刚刚测试了如何从UIWebView访问真实帐户即使需要两步验证,它也能很好地发挥作用。但是,我希望以编程方式到达那里,而不会将视图暴露给用户或以任何可能的方式将其掩盖。
有没有一种方法可以使用UIWebView来做到这一点?备择方案?
我拥有的代码很简单:
@IBOutlet var Webview: UIWebView!
let url = NSURL(string: "https://account.live.com/")
let request = NSURLRequest(URL: url!)
Webview.loadRequest(request)
PS:我尝试使用Mozilla的Web Developer插件检查实时登录页面,但无法理解参数(NAP,ANON,t)以及它们的计算方式。我认为可以做到,但也许有使用UIWebView的简便方法。
我认为您必须做的一件事是注入一些JavaScript来填充字段并触发登录过程。
您可以使用以下方法(伪代码):
NSString *javaScript = @"var field = document.getElementsByTagName('#password')[0];
// Set it.
// Trigger the form submission.";
[webView stringByEvaluatingJavaScriptFromString:javaScript];
然后,您可以通过获取内容(伪代码)来抓取页面:
NSString *html = [webView stringByEvaluatingJavaScriptFromString: @"document.body.innerHTML"];
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句