Swift html解析、查找、管理和导出
我有一个复杂的HTML,我想解析、查找和操作一些元素 有人能举例说明如何使用这个示例HTML吗Swift html解析、查找、管理和导出,html,ios,css,swift,parsing,Html,Ios,Css,Swift,Parsing,我有一个复杂的HTML,我想解析、查找和操作一些元素 有人能举例说明如何使用这个示例HTML吗 "<!DOCTYPE html>" + "<html>" + "<head>" + "<title>Page Title</title>" + "</head>" + "<body>" + "<h1>This is a Heading</h1>" + "<p class='paragrap
"<!DOCTYPE html>" +
"<html>" +
"<head>" +
"<title>Page Title</title>" +
"</head>" +
"<body>" +
"<h1>This is a Heading</h1>" +
"<p class='paragraph'>This is a paragraph.</p>" +
"<p class='paragraph'>This is a paragraph 2.</p>" +
"</body>" +
"</html>";
“”+
"" +
"" +
“页面标题”+
"" +
"" +
“这是一个标题”+
“这是一个段落。”+
“这是第2段。”+
"" +
"";
一个简单的方法是使用Swift库处理现实世界的HTML
下面是一个示例代码:
do{
let html = "<!DOCTYPE html>" +
"<html>" +
"<head>" +
"<title>Page Title</title>" +
"</head>" +
"<body>" +
"<h1>This is a Heading</h1>" +
"<p class='paragraph'>This is a paragraph.</p>" +
"<p class='paragraph'>This is a paragraph 2.</p>" +
"</body>" +
"</html>";
let doc: Document = try SwiftSoup.parse(html)
let els: Elements = try doc.getElementsByClass("paragraph")
let el: Element? = els.first()//get first element
print(try "\(el?.text())")//This is a paragraph.
try el?.text("New paragraph")
print(try "\(el?.text())")//New paragraph
//add new element
let newNode: Element = Element(try Tag.valueOf("em"), "")
try newNode.appendText("four")
try doc.body()?.appendChild(newNode)
//add html
try doc.body()?.append("<p>new html</p>")
print(try doc.html())
}catch Exception.Error(let type, let message)
{
print("")
}catch{
print("")
}
do{
让html=“”+
"" +
"" +
“页面标题”+
"" +
"" +
“这是一个标题”+
“这是一个段落。”+
“这是第2段。”+
"" +
"";
let doc:Document=try swifsoup.parse(html)
让els:Elements=try doc.getElementsByClass(“段落”)
让el:Element?=els.first()//获取第一个元素
打印(请尝试“\(el?.text())”//这是一个段落。
试试el?.text(“新段落”)
打印(尝试“\(el?.text())”//新段落
//添加新元素
让newNode:Element=Element(尝试Tag.valueOf(“em”),“”)
尝试newNode.appendText(“四”)
尝试doc.body()?.appendChild(新节点)
//添加html
尝试doc.body()?.append(新建html)
打印(请尝试doc.html())
}捕获异常。错误(let类型,let消息)
{
打印(“”)
}抓住{
打印(“”)
}
这里是新的HTML:
<!doctype html>
<html>
<head>
<title>Page Title</title>
</head>
<body>
<h1>This is a Heading</h1>
<p class="paragraph">New paragraph</p>
<p class="paragraph">This is a paragraph 2.</p>
<em>four</em>
<p>new html</p>
</body>
</html>
页面标题
这是一个标题
新段落
这是第2段
四
新html