swift 用于解析 HTML 的 libxml 包装器
A swift wrapper around libxml for parsing HTML
我收到一条奇怪的错误消息 "Extra argument 'endocing' in call",但它在方法中,所以它不是额外的参数?为什么会发生这种情况,我该如何解决?如您所见,声明变量 "parser" 时会出现错误消息。谢谢!
if let checkedUrl = NSURL(string:"http://www.mobladet.se") {
if let htmlString = String(contentsOfURL: checkedUrl, encoding: NSUTF8StringEncoding, error: nil) {
// Parsing HTML
let opt = CInt(HTML_PARSE_NOERROR.value | HTML_PARSE_RECOVER.value)
var err : NSError?
var parser = HTMLParser(html: htmlString, encoding: NSUTF8StringEncoding, option: opt, error: &err)
var bodyNode = parser.body
// Create an array of the part of HTML you need
if let inputNodes = bodyNode?.findChildTags("h4") {
for node in inputNodes {
let result = html2String(node.rawContents)
println(result)
}
}
} else {
println("Could not load HTML Content")
}
}
html 应该是 HTML 要解析的代码,而不是 NSURL。您需要使用 String(contentsOfURL:) 来提取其内容并解析它
if let checkedUrl = NSURL(string:""){
if let htmlString = String(contentsOfURL: checkedUrl, encoding: NSUTF8StringEncoding, error: nil) {
println(htmlString)
} else {
println("could not load html string from the url")
}
} else {
println("invalid url")
}
我收到一条奇怪的错误消息 "Extra argument 'endocing' in call",但它在方法中,所以它不是额外的参数?为什么会发生这种情况,我该如何解决?如您所见,声明变量 "parser" 时会出现错误消息。谢谢!
if let checkedUrl = NSURL(string:"http://www.mobladet.se") {
if let htmlString = String(contentsOfURL: checkedUrl, encoding: NSUTF8StringEncoding, error: nil) {
// Parsing HTML
let opt = CInt(HTML_PARSE_NOERROR.value | HTML_PARSE_RECOVER.value)
var err : NSError?
var parser = HTMLParser(html: htmlString, encoding: NSUTF8StringEncoding, option: opt, error: &err)
var bodyNode = parser.body
// Create an array of the part of HTML you need
if let inputNodes = bodyNode?.findChildTags("h4") {
for node in inputNodes {
let result = html2String(node.rawContents)
println(result)
}
}
} else {
println("Could not load HTML Content")
}
}
html 应该是 HTML 要解析的代码,而不是 NSURL。您需要使用 String(contentsOfURL:) 来提取其内容并解析它
if let checkedUrl = NSURL(string:""){
if let htmlString = String(contentsOfURL: checkedUrl, encoding: NSUTF8StringEncoding, error: nil) {
println(htmlString)
} else {
println("could not load html string from the url")
}
} else {
println("invalid url")
}