我有一个Html文档,它看起来像这样
<!--?xml version="1.0" encoding="utf-8" ?-->
<html>
<head>
<meta charset="utf-8">
<title>MyPage</title>
<link rel="stylesheet" href="css/epubs.css" type="text/css">
</head>
<body dir="ltr" xml:lang="zh-cn" class="MyCss">
--- content
</body>
</html>我正在用快速汤把身体包在这样的容器标签里
<div class="container">
<body>
</body>
</div>根据github示例,您可以这样包装它:
let span: Element = try doc.select("span").first()! // <span>One</span>
try span.wrap("<li><a href='http://example.com/'></a></li>")
print(doc)
// now: <li><a href="http://example.com/"><span>One</span></a></li>我的代码包装:
let html = try! String(contentsOf: chaptherFilePath)
let soup:Document = try! SwiftSoup.parse(html)
let soupBody:Element = try! soup.select("body").first()!
try! soupBody.wrap("<div class='container'></div>")但是当我这样做的时候,它不会把它包裹在身体周围,它会做这个奇怪的事情,并在底部加上一个新的身体标签和身体标签内的div。不知道为什么。
<!--?xml version="1.0" encoding="utf-8" ?-->
<html>
<head>
<meta charset="utf-8">
<title>MyPage</title>
<link rel="stylesheet" href="css/epubs.css" type="text/css">
</head>
<head>
<body dir="ltr" xml:lang="zh-cn" class="MyCss">
-- Body Content
</body>
<body>
<div class="container"></div> --- Not sure why it's doing this
</body>
</head>发布于 2022-01-11 20:28:25
不确定这是否是一个错误,或者我的文档的布局方式,但我让它工作的唯一方法是这样做。如果有人知道包装不工作的原因,我无法使用wrap,我想知道答案。但就目前而言,这是可行的。
let html = try! String(contentsOf: chaptherFilePath)
let soup:Document = try! SwiftSoup.parse(html)
let soupBody:Elements = try! soup.select("body")
try! soup.select("body").html("<div class='container'>\(soupBody.html())</div>")https://stackoverflow.com/questions/70672588
复制相似问题