我试图找出是否有维基百科API(我认为它与mediawiki有关?)。如何使用wikipedia API如果存在?
如果是这样,我想知道我将如何告诉维基百科给我一篇关于纽约洋基的文章。
这个例子的REST网址是什么?
关于此主题的所有文档看起来相当复杂。
我试图找出是否有维基百科API(我认为它与mediawiki有关?)。如何使用wikipedia API如果存在?
如果是这样,我想知道我将如何告诉维基百科给我一篇关于纽约洋基的文章。
这个例子的REST网址是什么?
关于此主题的所有文档看起来相当复杂。
你真的需要花一些时间阅读文档,因为这花了我一点时间看看,然后点击链接来解决它。 :/但出于同情我会给你一个链接,也许你可以学习使用。
这就是variabled你会找得到的。最好的办法是要知道你将是以后的页面,并取代维基百科的链接部分入题,即:
http://en.wikipedia.org/wiki/New_York_Yankees [维基后把部分/]
- >
[把它放在GET请求的标题变量中。
上面的URL可以通过调整来获得你做或不想做的不同部分。所以请阅读文档:)
见http://www.mediawiki.org/wiki/API
具体来说,对于英文维基百科,API位于http://en.wikipedia.org/w/api.php
这里的答案帮助我找到了一个解决方案,但是我发现了更多的信息,可能对其他找到这个问题的人有利。我想大多数人只是想使用API来快速从页面上获取内容。这里是我正在做的是:
使用修订:
//working url:
http://en.wikipedia.org/w/api.php?action=query&prop=revisions&titles=Threadless&rvprop=content&format=json&rvsection=0&rvparse=1
//Explanation
//Base Url:
http://en.wikipedia.org/w/api.php?action=query
//tell it to get revisions:
&prop=revisions
//define page titles separated by pipes. In the example i used t-shirt company threadless
&titles=whatever|the|title|is
//specify that we want the page content
&rvprop=content
//I want my data in JSON, default is XML
&format=json
//lets you choose which section you want. 0 is the first one.
&rvsection=0
//tell wikipedia to parse it into html for you
&rvparse=1
使用提取物(更好/更容易为我在做什么)
//working url:
http://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=Threadless&format=json&exintro=1
//only explaining new parameters
//instead of revisions, we'll set prop=extracts
&prop=extracts
//if we just want the intro, we can use exintro. Otherwise it shows all sections
&exintro=1
所有信息需要通过阅读所提到的API文档,但我希望这些示例能够帮助大多数来这里快速修复的人员。
如果你想提取从维基百科的结构化数据,您可以考虑使用DBpedia的http://dbpedia.org/
它提供的手段来查询使用利用解析维基百科的信息框模板SPARQL数据返回给定的标准数据
有一些SPARQL库可用于多种平台以使查询更容易
查看ApiSandbox https://en.wikipedia.org/wiki/Special:ApiSandbox这是一个易于查询API的Web前端。点击几下即可制作网址并显示API结果。
这是对所有维基百科语言启用的MediaWiki的扩展。 https://www.mediawiki.org/wiki/Extension:ApiSandbox
如果你想提取维基百科结构化的数据,你也可以尝试 http://www.wikidata.org/wiki/Wikidata:Main_Page
Wiki Parser转换维基百科转储到XML。它也很快。然后,您可以使用任何XML处理工具来处理解析的维基百科文章中的数据。
下面是一个实用的示例进行打印从维基百科纽约洋基页的第一句到Web浏览器的控制台:
<!DOCTYPE html>
</html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>
<body>
<script>
var wikiUrl = "http://en.wikipedia.org/w/api.php?action=opensearch&search=New_York_Yankees&format=json&callback=wikiCallbackFunction";
$.ajax(wikiUrl, {
dataType: "jsonp",
success: function(wikiResponse) {
console.log(wikiResponse[2][0]);
}
});
</script>
</body>
</html>
http://en.wikipedia.org/w/api.php
是为您的网址端点。您可以通过访问来了解如何构建您的网址: http://www.mediawiki.org/wiki/API:Main_page
我使用jsonp作为dataType以允许跨站点请求。更可以在这里找到: http://www.mediawiki.org/wiki/API:Cross-site_requests
最后但并非最不重要,一定要引用Jquery.ajax()API: http://api.jquery.com/jquery.ajax/
的“如果存在”部分也是这里介绍:HTTP:// stackoverflow.com/questions/627594/is-there-a-wikipedia-api。但我认为“如何使用它”部分是一个合理的问题......有点。 – Jonik 2009-06-08 12:14:38
现在有一个R包可以访问Mediawiki API(以及维基百科),更多详细信息和示例:http://stackoverflow.com/a/24027866/1036500 – Ben 2014-06-04 02:06:53