Skip to content

Instantly share code, notes, and snippets.

@ShoMasegi
Last active November 18, 2018 18:59
Show Gist options
  • Save ShoMasegi/5fd85b257a76d3ddb6284103d4a46350 to your computer and use it in GitHub Desktop.
Save ShoMasegi/5fd85b257a76d3ddb6284103d4a46350 to your computer and use it in GitHub Desktop.
import Foundation
import SwiftyXMLParsable
struct Program {
var title: String
var url: URL?
var personality: String
var imageUrl: URL?
var metas: [Meta]
}
extension Program: XMLParsable {
// <prog id="9463445504" master_id="" ft="20181119010000" to="20181119013000" ftl="2500" tol="2530" dur="1800">
// <title>加隈亜衣のアズールレーディオ</title>
// <url>http://www.joqr.co.jp/azur/</url>
// <pfm>加隈亜衣</pfm>
// <img>
// https://radiko.jp/res/program/DEFAULT_IMAGE/QRR/cl_20180328180436_859305.jpg
// </img>
// <metas>
// <meta> ... </meta>
// <meta> ... </meta>
// </metas>
// </prog>
init(accessor: XML.Accessor) {
let title = accessor["title"].text ?? ""
let url = URL(string: accessor["url"].text ?? "")
let personality = accessor["pfm"].text ?? ""
let imageUrl = URL(string: accessor["img"].text ?? "")
let metas = accessor["metas", "meta"].map { Meta(accessor: $0) }
self.init(title: title, url: url, personality: personality, imageUrl: imageUrl, metas: metas)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment