Я хочу, чтобы получить URL изображения с этой XML:Как получить данные из HTML-тега внутри XML тега -
<description>
<![CDATA[
<div><a href='http://www.ynet.co.il/articles/0,7340,L-4794118,00.html'><img src='http://images1.ynet.co.il/PicServer4/2016/04/20/6955445/small2.jpg' alt='null' title='null' border='0' width='100' height='56'></a></div>בפוליטיקה, בכלכלה, בביטחון, במשפט, בתרבות, באקדמיה. המתח העדתי עדיין איתנו בכל פינה. למה הגיעו כל כך מעט מזרחיים למוקדי הכוח בישראל? הנתונים המלאים, הניתוח והפרשנויות יתפרסמו ב-ynet בחג. צפו בהצצה
]]>
</description>
Это мой код. Я получил пустой массив, что не так с моим кодом и каково решение моей проблемы.
class ImageParser: NSObject, NSXMLParserDelegate{
var itemsStarted = false;
var descriptionStarted = false;
var divStarted = false;
var aStarted = false;
var inImage = false;
var images:[String] = [];
func parser(parser: NSXMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String]) {
if(elementName == "item"){
itemsStarted = true;
}
if(itemsStarted && elementName == "description"){
descriptionStarted = true;
}
if(descriptionStarted && elementName == "div"){
divStarted = true;
}
if(divStarted && elementName == "a"){
inImage = true;
}
if(inImage && elementName == "img"){
images.append(attributeDict["src"]!);
}
}
func parser(parser: NSXMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
if(elementName == "img"){
inImage = false;
}
}
}
Возможный дубликат [Использование NSXMLParser с CDATA] (http://stackoverflow.com/questions/1095782/using-nsxmlparser-with-cdata) – JAL
Вы можете показать мне, как использовать найденную функцию CDATA в swift? Я хочу извлечь URL-адрес изображения из этого блока –
@JAL: Не дубликат, так как сообщение, на которое вы ссылаетесь, находится в Obj-C, а не быстро ... Ответ там вроде как. –