Semalt - ¿Cómo raspar páginas web?

Beautiful Soup es una biblioteca de Python ampliamente utilizada para raspar páginas web mediante la creación de un árbol de análisis a partir de documentos XML y HTML. El raspado web, una técnica de extracción de datos de sitios web y páginas, se usa ampliamente en los campos de análisis y gestión de datos. En la mayoría de los casos, el lenguaje de programación Python es un requisito previo en la ciencia de datos.

Python 3 tiene herramientas y módulos de raspado que puede aplicar a su proyecto de gestión de datos. Actualmente se ejecuta como Beautiful Soup 4, este módulo es compatible con Python 3 y Python 2.7. El módulo Beautiful Soup 4 también es capaz de crear un árbol de análisis para la sopa de etiqueta no cerrada. En este tutorial, aprenderá cómo raspar la página y escribir los datos raspados en un archivo CSV.

Empezando

Para comenzar, configure un servidor o un entorno de codificación Python local en su PC. También debe instalar el módulo Beautiful Soup and Requests en su máquina. El conocimiento de trabajar con ambos módulos también es un requisito previo necesario. La familiaridad con el etiquetado y la estructura HTML también es una ventaja adicional.

Comprender sus datos

En este contexto, los datos reales de la Galería Nacional de Arte se utilizarán para ayudarlo a comprender cómo usar Beautiful Soup 4. La Galería Nacional de Arte comprende 120,000 piezas realizadas por aproximadamente 13,000 artistas. The Art tiene su sede en Washington DC, Estados Unidos.

La extracción de datos web con Beautiful Soup no es tan complicada. Por ejemplo, si te enfocas en la letra Z, marca y anota el primer nombre en la lista. En este caso, el primer nombre es Zabaglia, Niccola. Para mayor coherencia, indique el número de páginas y el nombre del último artista en esa página.

Cómo importar solicitudes y la biblioteca Beautiful Soup

Para importar bibliotecas, active su entorno de programación Python 3. Asegúrese de estar en el mismo directorio con su entorno de programación. Ejecute el siguiente comando para comenzar. my_env / bin / enable.

Cree un nuevo archivo y comience a importar las bibliotecas Beautiful Soup y Requests. La biblioteca de solicitudes le permitirá usar HTTP dentro de sus programas Python en formatos legibles. Beautiful Soup, por otro lado, trabaja para raspar páginas rápidamente. Usa bs4 para importar Beautiful Soup.

Cómo recopilar y analizar una página web

El uso de Solicitudes recopila la URL de su primera página. La URL de la primera página se asignará a la página variable. Cree un objeto BeautifulSoup a partir de solicitudes y analice el objeto desde el analizador de Python.

En este tutorial, el objetivo es recopilar enlaces y los nombres de los artistas. Por ejemplo, puede recopilar fechas y nacionalidades de artistas. Para usuarios de Windows, haga clic derecho en el nombre del artista. En este caso, use Zabaglia, Niccola. Para usuarios de Mac OS, toque "CTRL" y haga clic en el nombre. Haga clic en el menú "Inspeccionar elemento" que aparece en su pantalla para acceder a las herramientas de los desarrolladores web. Imprima los nombres del artista para que Beautiful Soup analice un árbol rápidamente.

Eliminar los enlaces inferiores

Para eliminar los enlaces inferiores de su página web, inspeccione el DOM haciendo clic derecho en el elemento. Identificará que los enlaces están debajo de una tabla HTML. Con Beautiful Soup, use el "método de descomposición" para eliminar etiquetas del árbol de análisis.

Cómo extraer contenido de una etiqueta

No tiene que imprimir la etiqueta de enlace completa, use Beautiful Soup para eliminar material de una etiqueta. También puede capturar las URL asociadas con los artistas usando Beautiful Soup 4.

Capturar datos raspados en un archivo CSV

El archivo CSV le permitirá almacenar datos estructurados en un texto plano, un formato que se usa principalmente para hojas de datos. Se recomienda el conocimiento sobre el manejo de archivos de texto sin formato en Python.

La extracción de datos web se utiliza para raspar páginas y obtener información. Sea considerado con los sitios web de los que obtiene información. Algunos sitios web dinámicos restringen la extracción de datos web en sus sitios. Raspar la página con Beautiful Soup y Python 3 es así de simple.