在Swift中解析HTML字符串
问题描述:
我有问题,我需要从网站中获取一些信息,但没有API,因此我将网址转换为字符串,然后使用TFHpple搜索XPath。我是初学者在XPath的那么你应该是什么样子的XPath:在Swift中解析HTML字符串
<a href=q/?s=wig20>WIG20</a></td><td><span id=aq_wig20_c2>2305.67</span></td><td nowrap><span id=aq_wig20_m1><font id=c1>+0.38%</font></span></td><td></td><td nowrap><span id=aq_wig20_d1>9:23</span></td></tr><tr>
答
在我的项目,我使用Kanna
它更容易在斯威夫特的项目中使用。
链接到GitHub repo。
在Kanna
,你可以获取你以这种方式需要信息:
let html = "<a href=q/?s=wig20>WIG20</a></td><td><span id=aq_wig20_c2>2305.67</span></td><td nowrap><span id=aq_wig20_m1><font id=c1>+0.38%</font></span></td><td></td><td nowrap><span id=aq_wig20_d1>9:23</span></td></tr><tr>"
if let doc = Kanna.HTML(html: html, encoding: String.Encoding.utf8) {
let bodyNode = doc.body
if let inputNodes = bodyNode?.xpath("//a | //span") {
for node in inputNodes {
print(node.content)
}
}
}
响应:
Optional("WIG20")
Optional("2305.67")
Optional("+0.38%")
Optional("9:23")
的全部数据均是<a>
和<span>
HTML元素。
你在找什么?好的例子由维克托发布听到http://stackoverflow.com/questions/31080818/what-is-the-best-practice-to-parse-html-in-swift –
我只需要采取WIG20,2305.67,0.38% ,9:23但HTMLString非常庞大,所以我想聪明地做到这一点 – Laxsion12