Objective c 解析维基百科表

Objective c 解析维基百科表,objective-c,ios,wikipedia,Objective C,Ios,Wikipedia,我希望在我的应用程序中有一个列出不同国家插头大小的功能,我发现了一个很好的维基百科页面,其中包含以下数据: 如果向下滚动,可以看到数据显示在表格中。因为没有维基百科API,我必须将数据插入PLIST,对吗?还有别的办法吗?如何将这些表解析为字典或数组?我能想到的最简单的方法是复制数据并将其粘贴到您选择的编辑器中 然后结合使用列编辑、搜索和替换。我倾向于使用TextWrangler,它支持正则表达式搜索和替换 这是一项一次性工作,而且行数有限,因此解决方案可能不需要完美——只要足够好和方便。我已

我希望在我的应用程序中有一个列出不同国家插头大小的功能,我发现了一个很好的维基百科页面,其中包含以下数据:


如果向下滚动,可以看到数据显示在表格中。因为没有维基百科API,我必须将数据插入PLIST,对吗?还有别的办法吗?如何将这些表解析为字典或数组?

我能想到的最简单的方法是复制数据并将其粘贴到您选择的编辑器中

然后结合使用列编辑、搜索和替换。我倾向于使用TextWrangler,它支持正则表达式搜索和替换


这是一项一次性工作,而且行数有限,因此解决方案可能不需要完美——只要足够好和方便。

我已经为Objective-C编写了一个Wikipedia API包装,在那里您可以获得此Wikipedia条目的html源代码。使用DOM解析器,您可以找到表并在条目上循环,然后将其写入字典

不幸的是,您需要的表没有id。但是您可以在表中搜索一个标题词,然后跳出一个元素,获得表

我刚查过。这是获取所需文章的html源代码所需的四行代码

WikipediaHelper *wikiHelper = [[WikipediaHelper alloc] init];
wikiHelper.apiUrl = @"http://en.wikipedia.org";

NSString *searchWord = @"Mains_electricity_by_country";

NSString *htmlSource = [wikiHelper getWikipediaHTMLPage:searchWord];

好的,这给了我页面的完整源代码,但是我如何解析表,我不希望得到页面的全部源代码,而是希望找到表部分并将其存储到nsdictionary中。我以前用一个很好的API做过HTML解析,但是这个源代码看起来让我很困惑……啊,我找到了它,似乎嵌套在我不太确定的API下。不知何故,维基百科api的响应速度不是很快。检查一下,当您直接调用WikipediaAPI时,也需要一段时间:/如果您发现任何加快它的方法,请随意将其提交到git项目中;)。加载不会花费太长时间,使用该页面并将此网站文本转换为字符串“因为没有WikipediaAPI”会更好吗?什么?你怎么知道的?