2014-01-12 58 views
0

我正在使用網站來查找單詞是否存在或不是羅馬尼亞語。因此,我有以下URL創建NSXMLParserhttp://dexonline.ro/definitie/caineNSXMLParser處理網頁

但解析器遍歷<head>元素名稱,而不是通過<body>,我不能告訴我們,如果這個詞被發現。

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict { 

    NSLog(@"%@",elementName); 
} 

解析器永遠不會到達主體。我能做什麼 ?

+0

「NSXMLParser」是一個XML解析器,應該用於解析XML,而不是HTML。 – nhgrif

回答

3

NSXMLParser可能不是正確的工具。它需要準確的XML輸入,而且經常來自網站的HTML不夠準確(缺少標籤/錯誤編碼/等)。

相反,你可能想:

  1. 找到一個不同的解析器,更灑脫約準確性
  2. 加載到網絡視圖,並使用JavaScript來找到您的內容
  3. 使用NSScanner到找到並提取您的內容
  4. 找到提供適當API的服務,而不是試圖颳去結果
+0

這個答案是正確的,我用RayWenderlich解決方案來解析HTML,它更容易,然後我的預期。 http://www.raywenderlich.com/14172/how-to-parse-html-on-ios – Macaret