2017-02-10 5 views
1

IBM Watson iOS SDK с использованием службы Alchemy News на Bluemix возвращает строковый результат, который требует разбора, чтобы вытащить поля, такие как url ​​и очищенный заголовок. ссылка: https://github.com/watson-developer-cloud/swift-sdkIBM Watson Alchemy news iOS SDK Swift

Я тяну строку в массив и разобрать его в swift3 используя некоторые строковые методы, но это довольно обычная и может привести к непредсказуемым результатам

Есть ли более элегантный подход, где я могу получить доступ к определенным полям, как url ​​и очищенный заголовок, который я передаю UITableViewCell, чтобы выбрать и перебрать ссылку 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] и также видели «А». Что означают эти префиксы и где они задокументированы

ответ

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