Blog
Como usar la librería Wikipedia de Python
- Publicado por: Rafael Fernandez
- Categoría: Blog

Python posee una gran variedad de librerías que nos permiten añadir funciones adicionales al lenguaje.
Wikipedia es una biblioteca Python que facilita el acceso y el análisis de datos de Wikipedia.
Con esta librería puesder obtener resúmenes de artículos, datos como enlaces e imágenes de una página, y más. Wikipedia envuelve la API de MediaWiki para que puedas concentrarte en usar los datos de Wikipedia, no en obtenerlos.
Ahora veamos cuales son los pasos previos a fin de utilizarlo.
Instalando la librería Wikipedia
La librería Wikipedia se instala con el administrador de paquetes de python denominado “pip”.
Ahora bien, en caso de no tenerlo, es necesario realizar los pasos que explicamos a continuación.
- Entrar al enlace: https://pip.pypa.io/en/stable/installing/
- Descargar “get-pip.py”
- Buscar el directorio donde se ha descargado y presionar doble click.
- Dejar que se instale, esperar a que cierre la pantalla y listo.
Podemos comprobar que se haya instalado correctamente abriendo el interprete de comandos en OS/2 y escribir “pip”, debe aparecer toda la documentación de este programa.
Por consiguiente, teniendo descargado e instalado pip, podemos proceder a instalar el paquete “Wikipedia. Para ello volvemos abrir el intérprete de comandos y añadimos la siguiente línea de código:
Instalando la librería Wikipedia en Python para Window y Linux
pip install wikipedia # En Windows $ pip install Wikipedia # En Linux
Listo, podemos comenzar a utilizar el paquete Wikipedia en los programas que desarrollemos.
Funciones de la librería Wikipedia
-
Búsqueda por consulta
Sintaxis:
wikipedia.search(query, results=10, suggestion=False)
Argumentos:
Resultados: la cantidad máxima de resultados devueltos
sugerencia: si es Verdadero, devuelve los resultados y la sugerencia (si corresponde) en una tupla
Ejemplo:
wikipedia.search(“Facebook”, results=5, suggestion=False)
Resultado en pantalla:
['Facebook', 'Facebook Platform', 'Facebook Messenger', 'Facebook Stories', 'Facebook Watch']
-
Resumen del texto
Sintaxis:
wikipedia.summary( query , sentences = 0 , chars = 0 , auto_suggest = True , redirect = True )
Argumentos:
Sentences: devuelve las primeras frases.
chars: muestra solo los primeros caracteres (el texto real puede ser un poco más largo).
auto_suggest: permite que Wikipedia encuentre un título de página válido para la consulta.
Redirect: redirecciona sin aumentar RedirectError
Ejemplo:
wikipedia.summary("Facebook" , sentences = 5 , chars = 0 , auto_suggest = True , redirect = True )
Resultado en pantalla:
Facebook is an American online social media and social networking service company based in Menlo Park, California. Its website was launched on February 4, 2004, by Mark Zuckerberg, along with fellow Harvard College students and roommates Eduardo Saverin, Andrew McCollum, Dustin Moskovitz and Chris Hughes. The founders initially limited the website's membership to Harvard students. Later they expanded it to higher education institutions in the Boston area, the Ivy League schools, and Stanford University. Facebook gradually added support for students at various other universities, and eventually to high school students. Since 2006, anyone who claims to be at least 13 years old has been allowed to become a registered user of Facebook, though variations exist in this requirement, depending on local laws. The name comes from the face book directories often given to American university students.
-
Búsqueda geográfica
Sintaxis:
wikipedia.geosearch(latitude, longitude, title=None, results=10, radius=1000)
Argumentos:
Latitude: (flotante o decimal.Decimal)
Longitude: (flotante o decimal.Decimal)
Title: título de un artículo a buscar
Results: cantidad máxima de resultados devueltos
Radius: Radio de búsqueda en metros (entre 10 y 10000).
Ejemplo:
wikipedia.geosearch(latitude = 37.787, longitude = -122.4, title=None, results=10, radius= 500)
Resultado en pantalla:
['140 New Montgomery', 'New Montgomery Street', 'Cartoon Art Museum', 'San Francisco Bay Area Planning and Urban Research Association', 'Academy of Art University', 'The Montgomery (San Francisco)', 'California Historical Society', 'Palace Hotel Residential Tower', 'St. Regis Museum Tower', 'Museum of the African Diaspora']
-
Búsqueda de datos de la página
Con wikipedia.page podemos visualizar y acceder a datos específicos de páginas completas.
Para ver su funcionamiento guardaremos en una variable toda la información de la página y luego la desglosaremos por partes.
Sintaxis:
wikipedia.page( title = None , pageid = None , auto_suggest = True , redirect = True , preload = False )
Argumentos:
Title: título de la página.
Pageid: número de la página que se va a cargar.
auto_suggest: permite que Wikipedia encuentre un título de página válido para la consulta.
Redirect: redirecciona sin aumentar RedirectError
Preload: carga de contenido, resumen, imágenes, referencias y enlaces durante la inicialización.
Propiedades:
- Categories: muestra las categorías de la página.
- Content: contenido sin formato, no incluye imágenes, tablas y otros datos.
- html( ): HTML de la página completa. Esta propiedad y la anterior suele demorar bastante tiempo en cargar.
- Coordinates: latitud y longitud o ninguno.
- Images: url de la imagen.
- Links: lista de enlaces de la página.
- References: Lista de enlaces externos.
- Sections: Lista de secciones que contiene la página.
- section( section_title ): contenido de una sección específica. Devuelve none en caso de no hallarla.
- Summary: carga un resumen de texto sin formato.
Ejemplo:
face = wikipedia.page("facebook") Face.title # 'Facebook' face.url # 'http: //en.wikipedia.org/wiki/Facebook ' face.summary # 'Facebook is an American online social media and social networking service company based in Menlo Park, California... face. images [ 3 ] #'https://upload.wikimedia.org/wikipedia/commons/6/6c/1601californiaavelobby.jpg' face.categories # ['2004 establishments in Massachusetts', '2012 initial public offerings', 'All Wikipedia articles in need of updating', 'All Wikipedia articles written in American English',…
Programa que busca artículo en Wikipedia
import wikipedia print ("1: Buscando 'New York' en Wikipedia") try: print (wikipedia.page("New York")) except wikipedia.exceptions.DisambiguationError as e: print (str(e)) result = wikipedia.page('New York (city)').content.encode('UTF8') print ("2: Resultado para 'New York (city)':") print (result)