html - 如何在swift中从字符串中获取html属性值

标签 html ios swift parsing

我是 swift 的新手,需要一点帮助。

我想从已使用

转换为字符串的 img 标签中获取 src 值
string.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet())

我正在从博客中检索帖子并尝试从每个项目中获取图像 url,以便我可以检索图像并将其显示在 ImageView 中。

这是我的代码:

类 myTableViewController: UITableViewController, NSXMLParserDelegate {

var parser: NSXMLParser = NSXMLParser()
var blogPosts: [BlogPost] = []
var postTitle: String = String()
var eName: String = String()

override func viewDidLoad() {
    super.viewDidLoad()
    let url:NSURL = NSURL(string: "http://myurl.com")!
    parser = NSXMLParser(contentsOfURL: url)!
    parser.delegate = self
    parser.parse()
}

func parser(parser: NSXMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String]) {
    eName = elementName
    if elementName == "item" {
        postTitle = String()
    }
}

func parser(parser: NSXMLParser, foundCharacters string: String) {
    let data = string.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet())
    if (!data.isEmpty) {
        if eName == "title" {
            postTitle += data
        } else if eName == "content:encoded" {
            //get the img src from data

        }
    }
}

Blogpost 类:

BlogPost 类 {

var postTitle: String = String()

最佳答案

既然我能够解决问题,那么我可以回答我的问题,因为它是允许的。

我实现了 Kanna Framework 并使用 doc.at_css("img") 获取图像标签,然后是 node["src"]!对于 img src 值。更多信息 https://github.com/tid-kijyun/Kanna

这是我的代码:

func parser(parser: NSXMLParser, foundCharacters string: String) {
        let data = string.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet())
        if (!data.isEmpty) {
            if eName == "content:encoded" {
                if let doc = Kanna.HTML(html: data, encoding: NSUTF8StringEncoding) {
                    if let node = doc.at_css("img") {
                        postImageUrl = node["src"]!
                    }
                }
            }
        }
    }

关于html - 如何在swift中从字符串中获取html属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33692142/

相关文章:

html - <button> 内元素的 "correct"行为是什么?

html - ionic 2/3 列表项 : item inside item

ios - WKWebView 可以播放受 fairplay/drm 保护的视频吗?

javascript - 关闭所有模式,然后打开点击的模式

javascript - 单击图像时部分暴露的 div 向上滑动

ios - 为什么 Travis 找不到我的头文件? (当相同的指令在我的本地 Xcode 上运行良好时)

ios - 由于 textView 无法选择 tableView Cell

ios - 存储应用程序运行时间的值

ios - Swift TextField 没有宽度

swift - Sprite Kit 从未检测到我的碰撞