Как спарсить и вывести все названия секций (блоков) со статьи Википедии?

Рейтинг: 0Ответов: 2Опубликовано: 27.02.2023

Программирую на python. Выбрал на данный момент библиотеку wikipedia, всё было хорошо, но столкнулся с проблемой парсинга названий секций. Требовалось, чтобы программа нашла все названия блоков данной статьи и вывела их через print. Казалось задачей легкой, но вот в данной библиотеке ничего такого не нашел. Например, в https://en.m.wikipedia.org/wiki/Neural_networkесть 10 разделов: Overview, History, Artifical intelligence, Applications, Neuroscience и т.д. Мне нужны названия этих разделов. Могли бы предложить какие библиотеки могут справиться с такой задачей?

Ответы

▲ 0Принят

Нашёл библиотеку wikipediaAPI, просмотрел документацию и решил таким образом:

import wikipediaapi

wiki_wiki = wikipediaapi.Wikipedia('en')
page_py = wiki_wiki.page('Neural_network')

def print_sections(sections):
        for s in sections:
                print("%s" % (s.title))
                

print_sections(page_py.sections)

Вывод:

History
Artificial intelligence
Applications
Neuroscience
Criticism
Recent improvements
See also
References
External links
▲ 0

программа нашла все названия блоков данной статьи

https://waksoft.susu.ru/2021/04/06/kak-s-pomoshhyu-python-izvlech-dannye-iz-vikipedii/

import wikipedia

result = wikipedia.search("Neural networks")
# получить страницу: Neural network
page = wikipedia.page(result[0])

# получение категорий страницы
categories = page.categories