1

我正在尝试从 wiki travel 中获取特定数据。像气候,getin 等。我已经设法通过特殊导出从他们那里获取 xml。

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

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

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

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

4

2 回答 2

1

这里有一个类似的问题:在哪里可以找到 PHP 中好的 MediaWiki 标记解析器?

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

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

于 2012-03-16T11:21:40.617 回答
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 中的许多操作都不起作用。

于 2012-03-19T00:32:01.643 回答