我在HTML页面中有这行代码:<a href="www.myWebsite.com" rel="ibox"></a>
。
我如何以最好的方式在swift代码中解析它,考虑到我不仅有这个标签“a”而且还有很多?
答案 0 :(得分:2)
在Swift中解析HTML通常需要第三方框架,我个人使用SwiftSoup。
以下是使用SwiftSoup在Swift中解析href
的方法。
do {
let html = "<a href=\"www.myWebsite.com\" rel=\"ibox\"></a>"
let doc: Document = try SwiftSoup.parse(html)
let links = try doc.select("a").map {
try $0.attr("href")
} // ["www.myWebsite.com"]
} catch Exception.Error(let type, let message) {
print(message)
} catch {
print("error")
}
在上文中,links
数组包含所有页面上链接的值。
答案 1 :(得分:2)
import Foundation
let html = "theHtmlYouWannaParse"
var err : NSError?
var parser = HTMLParser(html: html, error: &err)
if err != nil {
println(err)
exit(1)
}
var bodyNode = parser.body
if let inputNodes = bodyNode?.findChildTags("b") {
for node in inputNodes {
println(node.contents)
}
}
if let inputNodes = bodyNode?.findChildTags("a") {
for node in inputNodes {
println(node.getAttributeNamed("href")) //<- Here you would get your files link
}
}