2017-02-10 57 views
1

在Bluemix上使用Alchemy News服務的IBM Watson iOS SDK返回一個字符串結果,它需要解析來拉出url和清理標題等字段。裁判:https://github.com/watson-developer-cloud/swift-sdkIBM Watson Alchemy新聞iOS SDK Swift

我拉串入一個數組,並使用一些字符串方法解析它在swift3但是這是很普通的,並且能夠產生不可預知的結果

是否有更好的方法,我可以訪問特定的領域,就像我傳遞給UITableViewCell的URL和清理過的標題一樣,選擇並延續到url鏈接。

sample code: 
let alchemyDataNews = AlchemyDataNews(apiKey: apiKey) 
let failure = { (error: Error) in print(error) } 
let start = "now-14d" // 7 day ago 
let end = "now" // today 
let query = ["count": "15", 
          "dedup": "true", 
          "q.enriched.url.title": "[IBM]", 
          "return": "enriched.url.url,enriched.url.title" "enriched.url.title,enriched.url.entities.entity.text,enriched.url.entities.entity.type"] 

此外,我注意到搜索字符串[IBM]的前綴爲0,即0 [IBM],並且還看到了「A」。這些前綴是什麼意思和他們在哪裏記錄

回答

2

這裏有一種方法可以從返回的有效載荷訪問字段。

alchemyDataNews.getNews(from: "now-4d", to: "now", query: queryDict, failure: failWithError) { news in 

     for doc in (news.result?.docs)! { 
      var cleanedTitle = doc.source?.enriched?.url?.cleanedTitle 
      var author = doc.source?.enriched?.url?.author 
      var title = doc.source?.enriched?.url?.title 
     }} 

另外,這裏是鍊金術數據包含所有請求參數和過濾器的一個很好的API參考鏈路。

https://www.ibm.com/watson/developercloud/alchemydata-news/api/v1/

+0

謝謝文斯,那正是我所希望的。我查看過這個文檔,但沒有找到使用正確參數和過濾器的Swift語法。也許我錯過了,但現在你已經提供了這個例子,我可以很容易地使用所有的參數和過濾器。如果這個Swift語法是任何地方的文檔,我會欣賞鏈接 – jeff