试图刮擦wikitravel

时间:2012-03-16 10:52:38

标签: xml mediawiki wikipedia-api mediawiki-api wiki-markup

我正在尝试为特定数据搜索wiki旅行。像气候,getin等 我已经设法通过特殊导出从它们获取xml。

http://wikitravel.org/en/Special:Export/San_Francisco 我得到了xml格式的数据,但它是在wiki标记中,我尝试浏览获取该文本的解决方案,但无法找到合适的解决方案。

我尝试用正则表达式编写一个php函数,所以我可以将它转换为html,但它以非统一的方式转换,因此很难选择特定的数据。

还尝试编写mediawiki网址,以便我可以编程 http://wikitravel.org/en/api.php?format=xml&action=query&titles=Main%20Page&prop=revisions&rvprop=content 但它不起作用。

你能帮我解决这个问题。有没有人成功刮过维基百科。我有一个教程或我可以参考的任何其他技术。

2 个答案:

答案 0 :(得分:1)

这里有一个类似的问题:Where can I find a good MediaWiki Markup parser in PHP?

我也发现了这个:https://github.com/codeholic/w/blob/master/creole.php 来自:http://www.ivan.fomichev.name/2010/02/php-creole-10-wiki-markup-parser.html

这听起来像是一种令人沮丧的努力,祝你好运!

答案 1 :(得分:0)

Wikitravel的MediaWiki API位于http://wikitravel.org/wiki/en/api.php,请尝试以下方式:

http://wikitravel.org/wiki/en/api.php?format=xml&action=query&titles=Main%20Page&prop=revisions&rvprop=content

您需要使用API​​客户端,请参阅http://www.mediawiki.org/wiki/API:Client_code进行选择。还要注意Wikitravel使用非常旧版本的MediaWiki(1.11),因此现代API中的许多操作都不起作用。