如果我有一个页面的网址,如何使用MediaWiki webservices获取右侧的信息框信息?如何从维基百科获取信息框数据?
回答
有没有微不足道的方法来做到这一点。您可以尝试使用获取的action=raw
页面内容,即http://en.wikipedia.org/w/index.php?action=raw&title=Douglas_Jardine
然后找到信息框的通过搜索{{Infobox
开始。然后找到找到匹配}}
,考虑到信息框本身也可以包含{{
结束 - }}
和{{{
- }}}
双。
Tomxu - 你在谈论的是一个模板 - 这是一个简单的页面,您可以包括另一页上。对于信息框,您需要先看看Template:Infobox。这给你详细的说明。
您也可以按编辑(或视图代码)和内容复制到您自己的wiki。请记住,模板倾向于处于层次结构中,因此您可能需要复制Infobox使用的其他模板(如果要使用它们)。每个模板都可以用{{}}标识,例如Infobox模板将如下所示:{{Infobox}}。
我提到一个层次:你实际上会发现多个模板,所有使用模板:信息框。要找到它们,只需在维基百科的搜索字段中输入以下内容:Template:Infobox然后您会找到多个示例,例如Template:Infobox writer
更新:如果你的意思是Navboxes,那么see this information。
在我们的项目中,我们使用查询的维基获取数据是这样的:
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Fen.wiktionary.org%2Fwiki%2Flife%22%20and%20xpath%3D'%2F%2Fdiv%5B%40id%3D%22bodyContent%22%5D'&format=xml&diagnostics=false&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=recwiki
我对它有没有全面的了解,但它的作品。输出结果可以使用jquery或其他方法进行过滤。
我,你只是想分析的信息框,或者您希望得到一些消化的数据,一起来看看DBpedia的项目:http://dbpedia.org
它扫描InfoBoxes到在WP从维基百科创建一个RDF数据库:https://github.com/dbpedia/extraction-framework/
伟大的项目! – daluege 2014-08-11 21:36:35
也许有点晚,但我想同样的事情,并没有在这里看到任何简单的解决方案,但(如布赖恩指出的)事实证明不是太难使用MediaWiki的API与此库:
https://github.com/siznax/wptools
用法:
>>> import wptools
>>> so = wptools.page('Stack Overflow').get_parse()
>>> so.infobox
{'alexa': '{{DecreasePositive}}',
'author': '[[Joel Spolsky]] and [[Jeff Atwood]]',
'caption': 'Screenshot of Stack Overflow as of February 2015',
'commercial': 'Yes',
'content_license': '[[Creative Commons license|CC-BY-SA]] 3.0',
'current status': 'Online',
'landscape': 'yes',
'language': 'English',
'launch date': '{{start date and age|2008|9|15}}',
'logo': 'Stack Overflow logo.svg',
'name': 'Stack Overflow',
'owner': 'Stack Exchange, Inc.',
'programming_language': '[[C Sharp (programming language)|C#]]',
'registration': 'Optional; Uses [[OpenID]]',
'revenue': '',
'screenshot': 'Stack Overflow homepage.png',
'slogan': '',
'type': '[[:Category:Knowledge markets|Knowledge markets]]',
'url': '{{URL|https://stackoverflow.com}}'}
不是那么好。你真的需要检查你的提取是否正确。有时对于信息框中的特定项目,它会提取整个链接 – 2017-07-21 08:15:53
@HaniGotc我们做了一些改进。让我们知道你是否仍然有问题。 – siznax 2018-01-30 03:39:08
有关使用编辑模式是什么?你可以在正确的文本区域刚开始(大部分时间包含id="wpTextBox1"
),并解析文本区的内容...... 我用来查找出来的网址是(注:部分= 0):
https://de.wikipedia.org/w/index.php?title=Pelephone&action=edit§ion=0
问候
每个维基百科页面与一个维基数据项关联,且所有这些项目包括从维基百科页面的信息框模板的大多数参数。因此,您只需要访问Wikidata API与维基百科页面相关的数据。
一个例子如何从Wikidata item得到维基百科Donald Trump页面的数据:
https://www.wikidata.org/w/api.php?action=wbgetentities&sites=enwiki&props=claims&titles=Donald Trump
响应包括:出生,图像,宗教,母亲,父亲,孩子,身高,签名的日期和地点,官方网站等等,所有关于唐纳德特朗普的主要信息都包含在Wikipedia Infobox中。
使用MediaWiki,您可以通过以下链接查看维基百科页面右侧的信息框。正如你所看到的,格式是JSON格式(可以改变),通过将“氢”字改成你想要的特定标题,你将得到一个带有信息框的页面。
https://en.wikipedia.org/w/api.php?action=parse&page=Template:Infobox%20hydrogen&format=json
- 1. 从维基百科获取信息
- 2. 从维基百科获取信息框信息
- 3. 如何使用维基百科API获取维基百科文章信息框中的信息?
- 4. 获取所有属性从维基百科信息框(java)
- 5. 从维基百科解析网站信息框数据
- 6. 维基百科信息框的内容
- 7. 如何抓取维基百科文章的解析信息框?
- 8. 维基百科获取信息框与PHP
- 9. 如何从Mediawiki API的维基百科文章中获取信息框?
- 10. 从维基百科获取维基百科主题标题
- 11. 如何从维基百科的API获得国家信息
- 12. 如何从维基百科中提取统计信息?
- 13. 维基百科API获取数据
- 14. 从维基百科API提取数据
- 15. 如何从维基百科获取特定数据?
- 16. 如何从维基百科页面获取表格数据?
- 17. 如何从维基百科API获取表格中的数据?
- 18. 获取维基百科API
- 19. 如何使用MediaWiki API从(德语)维基百科中提取信息框?
- 20. 我如何从维基百科获取信息到我的应用程序中
- 21. 如何通过API从电影维基百科分类中获取信息?
- 22. 从标题获取维基百科pageid
- 23. 从维基百科页面获取xml
- 24. 获取维基百科页面查看统计信息
- 25. PHP +维基百科:从维基百科文章的第一段获取内容?
- 26. 如何从iPhone中的维基百科读取数据?
- 27. 无法从维基百科获取数据API
- 28. 维基百科web框架?
- 29. 维基百科的信息框 - 麻烦匹配模式
- 30. 如何在维基百科转储中找到信息
您必须谈论某些页面上使用的框,例如,一个关于一个人的页面,涵盖基本的细节(体重,身高,年龄......) - 对吗? – Wikis 2010-07-23 10:53:06
是的,这是正确的 – tomxu 2010-07-24 06:19:02
@tomux - 如果他们真的回答你的问题,请接受其中一个答案。 – Wikis 2010-09-18 16:52:41