Trazando las conexiones de los ganadores del Oscar |  de Milan Janosov |  febrero de 2024

En este breve artículo, utilizo datos públicos de Wikipedia, programación en Python y análisis de redes para extraer y elaborar una red de actores y actrices ganadores del Oscar.

Todas las imágenes fueron creadas por el autor.

Wikipedia, como la mayor enciclopedia en línea gratuita y de colaboración colectiva, sirve como una fuente de datos tremendamente rica sobre varios dominios públicos. Muchos de estos dominios, desde el cine hasta la política, involucran varias capas de redes subyacentes, que expresan diferentes tipos de fenómenos sociales como la colaboración. Debido a que se acerca la ceremonia de los Premios de la Academia, aquí muestro el ejemplo de actores y actrices ganadores del Oscar sobre cómo podemos usar métodos Pythonic simples para convertir sitios Wiki en redes.

Primero, echemos un vistazo a cómo, por ejemplo, el Lista Wiki de todos los actores ganadores del Oscar. está estructurado:

Lista Wiki de todos los actores ganadores del Oscar.

Esta subpágina muestra muy bien a todas las personas que alguna vez recibieron un Oscar y a las que se les concedió un perfil Wiki (lo más probable es que los fanáticos no hayan pasado por alto a ningún actor o actriz). En este artículo, me centro en la actuación, que se puede encontrar en las siguientes cuatro subpáginas, incluidos los actores y actrices principales y secundarios:

urls = { 'actor'         :'https://en.wikipedia.org/wiki/Category:Best_Actor_Academy_Award_winners',
'actress' : 'https://en.wikipedia.org/wiki/Category:Best_Actress_Academy_Award_winners',
'supporting_actor' : 'https://en.wikipedia.org/wiki/Category:Best_Supporting_Actor_Academy_Award_winners',
'supporting_actress' : 'https://en.wikipedia.org/wiki/Category:Best_Supporting_Actress_Academy_Award_winners'}

Ahora escribamos un bloque de código simple que verifique cada uno de estos cuatro listados y usemos los paquetes URLlib y hermosa sopaextrae el nombre de todos los artistas:

from urllib.request import urlopen
import bs4 as bs
import re

# Iterate across the four categories
people_data = []

for category, url in urls.items():

# Query the name listing page and…