0

我正在开发一个 iPhone 应用程序,主要登录到第三方网站并解析 HTML 数据以获取特定信息,如日期和时间等。

但是,如果网站稍微更新其 HTML 模板,这显然很容易被打破。

我不希望应用程序崩溃,如果它发生了 - 我不想每次都向苹果发送更新。

我需要一种简单的智能方式让我的应用程序从我自己的服务器下载有关如何解析网站的“说明”。这样,如果 HTML 发生变化;我可以只更新服务器上的说明,而不是向苹果发送全新的应用程序更新。

我目前正在使用 XPath 通过库 TFHpple 来查找数据,而且还通过到达目标 c 中的 TFHppleElements 子项来查找数据。

4

3 回答 3

1

老实说,更聪明的方法可能是不仅让您的服务器发送有关如何解析网站的“指令”,还让您的服务器自己完成整个抓取并充当“中间件”。您的服务器可以进行网络抓取,将内容转换为 JSON/XML/任何内容,然后您的设备可以请求它。如果网站发生变化,您只需更新服务器,您就可以将解析从设备卸载到服务器(根据您要抓取的内容,这可以显着减少被抓取网站的负载)。

于 2013-03-01T09:53:59.740 回答
0

HTML的解析

你的代码解析任何包含 HTML 的网站是多么出色,你需要每时每刻更新。即使您在网站上做到了万无一失。问题出现了如何解析包含 HTML 的网站。

可能你会使用 NSRegularExpression、NSPredicate 等来使用。

这里有一个大讨论:永远不要使用 RegEx 解析 HTML

于 2013-03-01T10:01:23.587 回答
0

您可以在本网站查看说明:

最好的 XMLParser 倾注你的 iPhone 项目

于 2013-03-01T10:28:03.757 回答