我想找到维基百科的API(我认为它与MediaWiki有关)。
如果有的话,我想知道如何告诉维基百科给我一个关于例如纽约洋基的文章。
这个例子的REST URL是什么?
所有关于这个主题的文档似乎都相当复杂。
我想找到维基百科的API(我认为它与MediaWiki有关)。
如果有的话,我想知道如何告诉维基百科给我一个关于例如纽约洋基的文章。
这个例子的REST URL是什么?
所有关于这个主题的文档似乎都相当复杂。
非常需要您花些时间阅读文档,因为这需要我看一下并点击链接才能解决。:/但出于同情,我将提供一个链接,也许您可以学会使用它。
这是你将要获取的变量。最好的方法是知道你要找的页面,并将维基百科链接部分替换成标题,如:
http://en.wikipedia.org/wiki/New_York_Yankees [取 wiki/ 后面的部分]
-->
[把它放在 GET 请求的标题变量中。上面的 URL 可以进行微调,以获取您想要或不想要的不同部分。所以请阅读文档 :)
这里的答案帮助我找到了解决方案,但在此过程中我还发现了更多有利于其他人的信息。我想大多数人只是想使用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
使用Extracts(对于我正在做的事情更好/更容易)
//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文档才能获取所有信息,但我希望这些示例能帮助那些来这里寻求快速解决方案的大部分人。
请查看http://www.mediawiki.org/wiki/API了解更多信息。
具体而言,英文维基百科的API位于http://en.wikipedia.org/w/api.php。
<!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/