我创建此任务是为了从网络抓取一些内容:
let task = NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: { (data, response, error) -> Void in
if error == nil {
var urlContent = NSString(data: data, encoding: NSUTF8StringEncoding) as NSString!
// Get the part that you are interested in from the web page
var urlContentArray = urlContent.componentsSeparatedByString("<div class=\"entry-summary\" itemprop=\"text\">")
// Check if the array contains a value before you print
if urlContentArray.count > 0 {
var newsArray = urlContentArray[1].componentsSeparatedByString("</div>")
var news = newsArray[0] as String
self.webView.loadHTMLString(news, baseURL: nil)
self.webContentLabel.text = news
}
} else {
println("Error")
}
})
我的问题是该网站已经格式化,因此我首先抓取的字符串和包含我感兴趣的文本的<p>
之间有很多空格,因此我得到了{{ 1}}在抓取文本的开头。如果我在字符串的末尾添加<p>
我抓住了,我得到一个错误,说该数组是空的。我认为原因是实际html文件中“<p>
”和“...itemprop="text">
”之间的空格?
有什么想法吗?