从 API 获取维基百科页面段落
Get Wikipedia page paragraph from API
如何从维基百科获取段落页面API?
例如,我想获取以下段落:
https://fr.wikipedia.org/wiki/Douarnenez#Urbanisme
我只能通过以下方式获取整个页面:
https://fr.wikipedia.org/w/api.php?action=query&format=json&prop=revisions&titles=Douarnenez&formatversion=2&rvprop=content&rvslots=*
您可以使用正则表达式过滤掉您的段落。这不漂亮,但有效。
例如:
((?<=== Urbanisme ==).*?(?=\n== ))
这会选择从 Urbanism 段落的标题后面开始到下一段标题之前结束的所有内容。参见:https://regex101.com/r/LlGSay/1
致谢:
我按照这些步骤来获取您需要的信息。
首先,获取您想要获取的部分的索引 - 为此,使用此端点获取 wiki 页面的部分:
https://fr.wikipedia.org/w/api.php?action=parse&format=json&page=Douarnenez&prop=sections
这是 API sandbox link 您可以试用的。
在你的具体情况下,我认为是 index=10
:
{
"toclevel": 2,
"level": 3,
"line": "Typologie",
"number": "3.1",
"index": "10",
"fromtitle": "Douarnenez",
"byteoffset": 18641,
"anchor": "Typologie"
}
然后,使用下一个端点获取给定部分中的文本:
https://fr.wikipedia.org/w/api.php?action=parse&format=json&page=Douarnenez&prop=wikitext§ion=10&disabletoc=1&utf8=1
结果如下-这里是link of the API sandbox:
{
"parse": {
"title": "Douarnenez",
"pageid": 4596068,
"wikitext": {
"*": "=== Typologie ===\nDouarnenez est une commune urbaine, car elle fait partie des communes denses ou de densité intermédiaire, au sens de la grille communale de densité de l'[[Institut national de la statistique et des études économiques|Insee]]<ref group=Note>Selon le zonage des communes rurales et urbaines publié en novembre 2020, en application de la nouvelle définition de la ruralité validée le {{date-|14 novembre 2020}} en comité interministériel des ruralités.</ref>{{,}}<ref >{{Lien web |url=https://www.observatoire-des-territoires.gouv.fr/typologie-urbain-rural |titre=Typologie urbain / rural |site=observatoire-des-territoires.gouv.fr |consulté le= 26 mars 2021}}.</ref>{{,}}<ref >{{Lien web |url=https://www.insee.fr/fr/metadonnees/definition/c1472|titre=Commune urbaine - définition |site=Insee.fr|consulté le= 26 mars 2021}}.</ref>{{,}}<ref >{{Lien web |url= https://www.observatoire-des-territoires.gouv.fr/methodes/comprendre-la-grille-de-densite|titre= Comprendre la grille de densité|site=observatoire-des-territoires.gouv.fr |consulté le= 26 mars 2021}}.</ref>. \nElle appartient à l'[[unité urbaine]] de Douarnenez, une unité urbaine monocommunale<ref>{{Lien web|url=https://www.insee.fr/fr/metadonnees/cog/unite-urbaine/UU202029306-douarnenez |titre=Unité urbaine 2020 de Douarnenez|site=insee.fr|consulté le= 26 mars 2021}}.</ref> de {{Unité|13902|habitants}} en 2017, constituant une ville isolée<ref name=\"UU2020\">{{Lien web|url=https://www.insee.fr/fr/information/4802589 |titre=Base des unités urbaines 2020 |date=21 octobre 2020|site=insee.fr |consulté le= 26 mars 2021}}.</ref>{{,}}<ref name=\"UU20202b\">{{Lien web|url=https://www.insee.fr/fr/statistiques/4806684 |titre=Toujours plus d’habitants dans les unités urbaines |auteur=Vianney Costemalle |date=21 octobre 2020 |site=insee.fr |consulté le= 26 mars 2021}}.</ref>."
}
}
}
如何从维基百科获取段落页面API?
例如,我想获取以下段落: https://fr.wikipedia.org/wiki/Douarnenez#Urbanisme
我只能通过以下方式获取整个页面:
https://fr.wikipedia.org/w/api.php?action=query&format=json&prop=revisions&titles=Douarnenez&formatversion=2&rvprop=content&rvslots=*
您可以使用正则表达式过滤掉您的段落。这不漂亮,但有效。
例如:
((?<=== Urbanisme ==).*?(?=\n== ))
这会选择从 Urbanism 段落的标题后面开始到下一段标题之前结束的所有内容。参见:https://regex101.com/r/LlGSay/1
致谢:
我按照这些步骤来获取您需要的信息。
首先,获取您想要获取的部分的索引 - 为此,使用此端点获取 wiki 页面的部分:
https://fr.wikipedia.org/w/api.php?action=parse&format=json&page=Douarnenez&prop=sections
这是 API sandbox link 您可以试用的。
在你的具体情况下,我认为是 index=10
:
{
"toclevel": 2,
"level": 3,
"line": "Typologie",
"number": "3.1",
"index": "10",
"fromtitle": "Douarnenez",
"byteoffset": 18641,
"anchor": "Typologie"
}
然后,使用下一个端点获取给定部分中的文本:
https://fr.wikipedia.org/w/api.php?action=parse&format=json&page=Douarnenez&prop=wikitext§ion=10&disabletoc=1&utf8=1
结果如下-这里是link of the API sandbox:
{
"parse": {
"title": "Douarnenez",
"pageid": 4596068,
"wikitext": {
"*": "=== Typologie ===\nDouarnenez est une commune urbaine, car elle fait partie des communes denses ou de densité intermédiaire, au sens de la grille communale de densité de l'[[Institut national de la statistique et des études économiques|Insee]]<ref group=Note>Selon le zonage des communes rurales et urbaines publié en novembre 2020, en application de la nouvelle définition de la ruralité validée le {{date-|14 novembre 2020}} en comité interministériel des ruralités.</ref>{{,}}<ref >{{Lien web |url=https://www.observatoire-des-territoires.gouv.fr/typologie-urbain-rural |titre=Typologie urbain / rural |site=observatoire-des-territoires.gouv.fr |consulté le= 26 mars 2021}}.</ref>{{,}}<ref >{{Lien web |url=https://www.insee.fr/fr/metadonnees/definition/c1472|titre=Commune urbaine - définition |site=Insee.fr|consulté le= 26 mars 2021}}.</ref>{{,}}<ref >{{Lien web |url= https://www.observatoire-des-territoires.gouv.fr/methodes/comprendre-la-grille-de-densite|titre= Comprendre la grille de densité|site=observatoire-des-territoires.gouv.fr |consulté le= 26 mars 2021}}.</ref>. \nElle appartient à l'[[unité urbaine]] de Douarnenez, une unité urbaine monocommunale<ref>{{Lien web|url=https://www.insee.fr/fr/metadonnees/cog/unite-urbaine/UU202029306-douarnenez |titre=Unité urbaine 2020 de Douarnenez|site=insee.fr|consulté le= 26 mars 2021}}.</ref> de {{Unité|13902|habitants}} en 2017, constituant une ville isolée<ref name=\"UU2020\">{{Lien web|url=https://www.insee.fr/fr/information/4802589 |titre=Base des unités urbaines 2020 |date=21 octobre 2020|site=insee.fr |consulté le= 26 mars 2021}}.</ref>{{,}}<ref name=\"UU20202b\">{{Lien web|url=https://www.insee.fr/fr/statistiques/4806684 |titre=Toujours plus d’habitants dans les unités urbaines |auteur=Vianney Costemalle |date=21 octobre 2020 |site=insee.fr |consulté le= 26 mars 2021}}.</ref>."
}
}
}