本文介绍在维基百科中提取数据和搜索,使用 Python 中的维基百科库获取文章摘要、链接、图像等。
如何在Python中提取维基百科数据?维基百科无疑是互联网上最大和最受欢迎的综合参考书,它是最受欢迎的网站之一。它具有完全免费的内容。因此,能够在 Python 中访问如此大量的信息是一项方便的工作。在本教程中,你将能够轻松地从维基百科中提取信息,而无需任何努力。
相关:如何在 Python 中提取所有网站链接。
Python如何提取维基百科数据?我需要提到的是,我们不会手动抓取维基百科页面,维基百科 模块已经为我们完成了艰巨的工作。让我们安装它:
pip3 install wikipedia
打开一个 Python 交互式 shell 或一个空文件,然后继续。
让我们总结一下什么是 Python 编程语言:
import wikipedia
# print the summary of what python is
print(wikipedia.summary("Python Programming Language"))
Python提取维基百科数据示例 - 这将从这个维基百科页面中提取摘要。更具体地说,它会打印一些首句,我们可以指定要提取的句子数:
In [2]: wikipedia.summary("Python programming languag", sentences=2)
Out[2]: "Python is an interpreted, high-level, general-purpose programming language. Created by Guido van Rossum and first released in 1991, Python's design philosophy emphasizes code readability with its notable use of significant whitespace."
请注意,我故意拼错了查询,它仍然给我一个准确的结果。
如何在Python中提取维基百科数据?在维基百科搜索中搜索一个术语:
In [3]: result = wikipedia.search("Neural networks")
In [4]: print(result)
['Neural network', 'Artificial neural network', 'Convolutional neural network', 'Recurrent neural network', 'Rectifier (neural networks)', 'Feedforward neural network', 'Neural circuit', 'Quantum neural network', 'Dropout (neural networks)', 'Types of artificial neural networks']
这返回了相关页面标题的列表,让我们获取“神经网络”的整个页面,即“result[0]”:
# get the page: Neural network
page = wikipedia.page(result[0])
提取标题:
# get the title of the page
title = page.title
获取该维基百科页面的所有类别:
# get the categories of the page
categories = page.categories
删除所有 HTML 标签后提取文本(这是自动完成的):
# get the whole wikipedia page text (content)
content = page.content
所有链接:
# get all the links in the page
links = page.links
参考资料:
# get the page references
references = page.references
最后总结一下:
# summary
summary = page.summary
让我们把它们打印出来:
# print info
print("Page content:\n", content, "\n")
print("Page title:", title, "\n")
print("Categories:", categories, "\n")
print("Links:", links, "\n")
print("References:", references, "\n")
print("Summary:", summary, "\n")
试试看 !
Python提取维基百科数据示例 - 你还可以将Python维基百科库中的语言从英语更改为你选择的另一种语言:
# changing language
# for a list of available languages,
# check http://meta.wikimedia.org/wiki/List_of_Wikipedias link.
language = "es"
wikipedia.set_lang(language)
# get a page and print the summary in the new language
print(f"Summary of web scraping in {language}:", wikipedia.page("Web Scraping").summary)
如何在Python中提取维基百科数据?上面我们使用wikipedia.set_lang()
函数更改了语言,然后正常提取我们的页面。有关可用语言的列表,请查看此链接。
Python如何提取维基百科数据?好的,我们完成了,这是关于如何使用 Python 从维基百科中提取信息的简要介绍。如果你想自动收集语言模型的数据、制作问答聊天机器人、围绕此制作包装应用程序等等,这会很有帮助!可能性是无限的,请在下面的评论中告诉我们你对此做了什么!
在此处查看完整代码和该库的官方文档。