首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Kanna分析html

用Kanna分析html
EN

Stack Overflow用户
提问于 2016-11-22 18:07:15
回答 1查看 3K关注 0票数 0

我正试图使用Kanna将html解析到我的快速项目中,我使用了这个What is the best practice to parse html in swift?作为指南。

下面是我用来解析html的代码:

代码语言:javascript
复制
if let doc = Kanna.HTML(html: myHTMLString, encoding: String.Encoding.utf8) {
    var bodyNode = doc.body

    if let inputNodes = bodyNode?.xpath("//a/@href[ends-with(.,'.txt')]") {
        for node in inputNodes {
            print(node.content)
        }
    }
}

现在我没有这方面的经验,但我相信我必须改变.xpath("//a/@href[ends-with(.,'.txt')]"),以获得我需要的具体信息。

这是html im试图解析:

视图-来源:compounds

我想要的是标题:“锑酸铝”和化学式:"AlSb“。

有人能告诉我用.xpath(...)写什么吗,或者向我解释一下它是如何工作的?

EN

回答 1

Stack Overflow用户

发布于 2017-03-27 17:30:40

Swift 3

使用循环获取所有项

代码语言:javascript
复制
for item in doc.xpath("//div[@class='mw-content-ltr']/ul/li") {
    print(item.at_xpath("a")?["title"])
    print(item.text) // this returns the whole text, you may need further actions here
}

或访问特定项

代码语言:javascript
复制
print(doc.xpath("//div[@class='mw-content-ltr']/ul/li")[0].at_xpath("a")?["title"])
print(doc.xpath("//div[@class='mw-content-ltr']/ul/li")[0].text)

您可以查看xpath教程和文档以获得更多信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40748762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档