我開始與Swift一起工作,並且出現此錯誤。我想從這個網站得到的「8660」(在「DOLAR VENTA」):http://www.lanacion.com.ar/dolar-hoy-t1369如果您檢查在網站數量的元素,你會發現這一點:Xcode不會從網站下載確切的HTML
<p id="dventa">8,<span>660</span></p>
,我以爲我可以從該行獲取數據。
的事情是,當我下載它,並使用此代碼打印到輸出:
@IBAction func obtenerPrecio(sender: AnyObject) {
let url = NSURL(string: "http://www.lanacion.com.ar/dolar-hoy-t1369")
let task = NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: { (data, response, error) -> Void in
if error == nil {
var urlContent = NSString(data: data, encoding: NSUTF8StringEncoding) as NSString!
//var urlContentArray = urlContent.componentsSeparatedByString("<p id=\"dventa\">")
println(urlContent)
} else {
println(error)
}
})
task.resume()
}
我得到的是這個(我將只顯示所需要的部分):
<p id="dventa">-</p>
「 - 」應該是哪裏的數據。我能做些什麼來獲取信息?謝謝
看來你要求的頁面有一些運行的javascript來更新東西。由於您剛剛以靜態方式加載原始HTML數據而不是在Web視圖中,因此不會出現此行爲。 – 2015-02-09 20:57:47
@IanMacDonald我需要將標籤的文字等同於該信息(8,660)我可以以任何方式做到這一點嗎? – 2015-02-09 21:05:07
您需要在Web視圖中加載URL,然後在完成加載後提取數據。 – 2015-02-09 21:06:18