从pywikibot中的wikidata获取"也称为#34; -properties

时间:2017-09-08 17:42:04

标签: python python-3.x pywikibot

我试图从wikidata中提取"也称为" -information。 例如,通过访问猫王的页面(https://www.wikidata.org/wiki/Q303),我想要获取信息" Elvis,Elvis Aaron Presley,The King,The King of Rock' n' Roll"

我使用pywikibot作为Python 3.5上的脚本。

知道我可以抓取页面的文本(似乎不包含这些同义词),以及右侧有翻译的Itempage。

import pywikibot
 site = pywikibot.Site('en', 'wikipedia')
page = pywikibot.Page(site, 'Elvis Presley')
item = pywikibot.ItemPage.fromPage(page)

item.get()  # you need to call it to access any data.
sitelinks = item.sitelinks
print(sitelinks)

提前谢谢!

1 个答案:

答案 0 :(得分:1)

您的代码看起来不错。您只需获取别名而不是附加链接,例如:

from pprint import pprint
pprint(item.aliases['en'])

它为您提供了预期的列表:

['Elvis',
 'Elvis Aaron Presley',
 "The King of Rock'n'Roll",
 "King of Rock'n'Roll",
 'Elvis Aron Presley',
 "The King of Rock 'n' Roll",
 "King of Rock 'n' Roll",
 'The King',
 'Elvis A. Presley']