我正在连接到一个网站,登录并使用NSURLRequest抓取页面的HTML源代码,该工作正常。我通过将它打印到控制台来确认html源代码是我需要的。问题是我需要在javascript代码完成后获取呈现的HTML。根据我的研究,唯一的方法是将其加载到我想要做的UIWebView中。但是,当我这样做时,webViewDidFinishLoad委托永远不会触发。 webViewDidStartLoad也没有。我不想在任何地方显示UIWebView,因为它的唯一目的是为我提供呈现的HTML。到目前为止,这是我的代码:
import UIKit
class ShowParser : NSObject, UIWebViewDelegate
{
var webView = UIWebView()
init()
{
super.init()
webView.delegate = self
sendRequest()
}
funs sendRequest()
{
var requestUrl = NSURL(string: "<website>")
var baseUrl = NSURL(string: "<website>")
var nsurlRequest = NSMutableURLRequest(URL: requestUrl)
nsurlRequest.HTTPMethod = "POST"
nsurlRequest.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
var submitData = "submit=login&lastplace=&email=<username>&password=<password>"
var requestBodyData = submitData.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)
nsurlRequest.HTTPBody = requestBodyData
var data = NSURLConnection.sendSynchronousRequest(nsurlRequest, returningResponse: nil, error: nil)
var dataResultsString = NSString(data: data, encoding: NSUTF8StringEncoding)
//println(dataResultsString)
webView.loadHTMLString(dataResultsString, baseURL: baseUrl)
}
func webViewDidStartLoad(webView: UIWebView!)
{
println("Started Loading")
}
func webViewDidFinishLoad(webView: UIWebView)
{
println("Finished Loading")
}
}
答案 0 :(得分:0)