我正在尝试解析以下HTML文本以从标记获取数据
<table class=\"table table-condensed\">
<tr>
<td colspan =\"2\">
<h4>New Company</h4>
</td>
</tr>
<tr>
<td>application</td>
<td>web</td>
</tr>
<tr>
<td>server_name</td>
<td>news.com</td>
</tr>
<tr>
<td colspan =\"2\">
<h4>Internal Machine</h4>
</td>
</tr>
<tr>
<td>IP</td>
<td>1.1.1.1</td>
</tr>
<tr>
<td>MAC</td>
<td>AC:87:87:87:87:87</td>
</tr>
<tr>
<td colspan =\"2\">
<h4>External Machine</h4>
</td>
</tr>
<tr>
<td>IP</td>
<td>217.16.26.161</td>
</tr>
<tr>
<td> Location</td>
<td>test</td>
</tr>
<tr>
<td colspan =\"2\">
<h4>Additional Information</h4>
</td>
</tr>
<tr>
<td>Amount Sent</td>
<td>00.0 B</td>
</tr>
<tr>
<td>Amount Received</td>
<td>2.5 KB</td>
</tr>
<tr>
<td>Application</td>
<td>web</td>
</tr>
<tr>
<td>Ports</td>
<td>12345, 123</td>
</tr>
</table>
最佳答案
您可以使用以下库来帮助您在Swift中解析HTML:
Kanna
Fuzi
NDHpple
例如,这可以使用Kanna(未经测试的代码)提取HTML中的所有TD值:
let html = "<html>...</html>"
if let doc = Kanna.HTML(html: html, encoding: NSUTF8StringEncoding) {
for td in doc.css("td") {
print(td)
}
}