首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Swift中具有特定属性的html标记的解析

Swift中具有特定属性的html标记的解析
EN

Stack Overflow用户
提问于 2018-03-09 19:19:04
回答 1查看 780关注 0票数 0

是否有一种方法可以解析具有特定属性的标记的HTML

现在,我使用以下代码获取页面的内容(使用SwiftSoup):

代码语言:javascript
复制
    // Checking if MyLink is working
    guard let myURL = URL(string: MyLink) else {                                                 // myURL needed only temporarly
        print("Error: \(MyLink) doesn't seem to be a valid URL")
        return
    }

    // Getting all content of website for a specific link
    do {
        MyLinkContent = try String(contentsOf: myURL, encoding: .ascii)
    } catch let error {
        print("Error: \(error)")
    }

获得内容后,我可以将所有链接保存在数组中,例如使用以下代码:

代码语言:javascript
复制
        // Searching for all links in the content of the URL and creating elements
        guard let linkElements: Elements = try? SwiftSoup.parse(MyLinkContent).select("a")  else {return}
        //  Now all elements are printed into an array
        for element: Element in linkElements.array(){
            MyLinkArray.append("\(element)")
        }

这将导致一个包含网站所有链接的数组。

然而,我的问题是,比如说主页有很多标签,格式如下:

代码语言:javascript
复制
- Things I don't need especially a lot of <tr tags but with other attributes I don't need
- <tr id="row_">"TheContentINeed"</tr>
- <tr id="row_">"TheContentINeed"</tr> 
- <tr id="row_">"TheContentINeed"</tr> 
- <tr id="row_">"TheContentINeed"</tr> 
- <tr id="row_">"TheContentINeed"</tr> 
- More Things I don't need specially a lot of <tr tags but with other attributes I don't need

我希望将所有内容保存在数组中,但只保存属性为"id“的标记。

有什么想法吗?我更愿意再次使用SwiftSoup (如果可能的话)。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-03-13 09:50:25

组合你的CSS选择器。请参阅更多的示例项目。

代码语言:javascript
复制
// Searching for all links in the content of the URL and creating elements
guard let linkElements: Elements = try? SwiftSoup.parse(MyLinkContent).select("a tr[id="row"]")  else {return}
//  Now all elements are printed into an array
for element: Element in linkElements.array(){
   MyLinkArray.append("\(element)")
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49200700

复制
相关文章

相似问题

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