我想知道 Objective-C 中是否有任何现有的库或可从中访问这些库可以让我抓取格式类似于 this one 的页面.具体来说,所有日期和每个日期旁边的所有文本。如果没有,执行此操作的最佳方法是什么?常用表达?我听说 NSString
可能已经为此内置了方法。这是真的吗?
我四处寻找是否有任何替代抓取的方法,例如 XML 文件或 API。我确实找到了一个 API,但我看到唯一可用的客户端是其他语言的,它们似乎只能将内容发布到页面,而不能检索它。
编辑:所以我在这些链接中找到了有关 API 的更多信息:
我能够想出 this request它返回一些 HTML 编码的文本(格式是 XML,但它包括页面的文本,例如 »a href=
等。我会继续查看文档,看看我是否可以做到这一点结果会好一点,如果不是,是否有任何关于解析它的建议?
编辑 2:好的,感谢 this doc page ,我能够检索数据的最简单和最干净的方法是使用这个 constructed link它返回相关部分的原始数据(在 wiki 标记中)。但是,我想我随后需要对其进行解析,但如果确实如此,它应该比整篇文章容易得多。
有人对在 Objective-C 中解析 wiki 标记有什么建议吗?
==Events==
* [[710]] – [[Saracen]] invasion of [[Sardinia]].
*[[1275]] – Traditional founding of the city of [[Amsterdam]].
*[[1682]] – [[Philadelphia]], [[Pennsylvania]] is founded.
我想最终得到的是,我猜是一个 NSDictionary
或类似的集合,它将存储带有信息片段的日期。谢谢!
最佳答案
将 &format=fmt
添加到查询的末尾,如 API:Data_formats 中所述.您的查询变为:JSON query , 例如。您可以指定 XML、JSON 或许多其他格式。
您可以轻松地解析整个部分,然后将 HTML 格式的输出显示到 WebView 中。
关于objective-c - 抓取和解析维基百科页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1633296/