如何获得特定的维基百科页面部分?

时间:2017-01-10 20:50:39

标签: python-2.7 wikipedia-api pywikibot

我想创建一个演员和他们演过的电影的图表数据库。为了获得演员和电影的列表,我正在尝试使用pywikibot解析器,但是当我只想要页面的电影部分时,我只能获得整页。有没有办法解析页面,所以我可以获得电影摄影?这是我到目前为止所做的:

import pywikibot as pw

site = pw.Site()
page = pw.Page(site, actor_name) #will be put into loop to get multiple actors
print page.text #returns full text of the page in format below
print page.linkedPages #returns linked pages

有一个想法是返回与演员相关联的所有链接页面,因为大多数电影是链接的。我获取文本数据的格式如下:

{{Infobox person
| name         = 
| birth name   =
}}

Summary

==Early life==

==Career==

==Filmography==

我只能获得页面的影视部分?

1 个答案:

答案 0 :(得分:1)

您可以使用Wikipedia API执行此操作。例如,要获取William Alland的“影视素材”部分,您需要获取名称为"影视作品" 的部分的索引

https://en.wikipedia.org/w/api.php?action=parse&prop=sections&page=William Alland

从回复中我们看到 2 。然后我们必须使用该索引来获取本节中的文本:

https://en.wikipedia.org/w/api.php?action=parse&prop=text&section=2&page=William Alland

注意:使用prop=wikitext代替text获取wiki格式的内容。

相关问题