Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Qué marcos utilizan los rastreadores de Python?

¿Qué marcos utilizan los rastreadores de Python?

PySpider

PySpider es una implementación de código abierto de una arquitectura de rastreador realizada en binux. Los principales requisitos funcionales son:

Rastreo, actualización y programación de páginas específicas de múltiples sitios

Necesidad de extraer información estructurada de la página

Flexible, escalable, estable y monitoreable

El diseño de pyspider se basa en: rastreador de modelo de anillo de rastreo basado en scripts de Python

Extraiga información estructurada a través de scripts de Python y siga la programación de enlaces para el control de rastreo para lograr la máxima flexibilidad

A través de entornos de depuración y secuencias de comandos basados ​​en web. Web muestra el estado de programación

El modelo de anillo de rastreo es maduro y estable, y cada módulo es independiente entre sí. Está conectado a través de una cola de mensajes y se puede expandir de manera flexible desde un solo proceso hasta la distribución en varias máquinas.

Arquitectura de pyspider Dividido en programador, rastreador y procesador:

Cada componente está conectado a través de una cola de mensajes. Excepto el programador, que es un único punto, el rastreador y el procesador pueden estar conectados. Implementado de manera distribuida con múltiples instancias. El programador es responsable del control general de la programación

El programador inicia la programación de tareas, el captador toma el contenido de la página web, el procesador ejecuta el script de Python escrito previamente, genera los resultados o genera una nueva tarea en cadena (para el planificador), formando un circuito cerrado.

Cada script tiene la flexibilidad de usar varias bibliotecas de Python para analizar la página, usar la API del marco para controlar la siguiente acción de rastreo y configurar devoluciones de llamada para controlar la acción de análisis.

Scrapy

Scrapy es un marco de aplicación para extraer datos de sitios web y extraer datos estructurados. Se puede aplicar a una variedad de programas que incluyen minería de datos, procesamiento de información o almacenamiento de datos históricos.

Fue diseñado originalmente para el raspado de páginas (más específicamente, el raspado web), pero también se puede utilizar para obtener datos devueltos por API como Amazon Associates Web Services o datos de raspadores web de uso general. Scrapy tiene una amplia gama de usos y puede usarse para extracción de datos, monitoreo y pruebas automatizadas

Los componentes principales de Scrapy son Scrapy se compone principalmente de los siguientes componentes:

Motor ( Scrapy): se utiliza para procesar todo El procesamiento del flujo de datos del sistema y las transacciones activadas (el núcleo del marco)

Scheduler (Scheduler): se utiliza para aceptar solicitudes del motor, enviarlas a la cola y regresar cuando el motor lo solicite nuevamente. Piense en ello como una cola prioritaria de URL (direcciones web o enlaces a páginas rastreadas), decide qué URL rastrear a continuación y elimina las URL duplicadas.

Descargador: se utiliza para descargar el contenido de la página web y devolverlo. a la araña (el descargador Scrapy se basa en Twisted y es un modo asíncrono eficiente)

Rastreador (Spider): el rastreador es el trabajo principal y se utiliza para descargar datos de una página web específica (la así). llamada entidad (Artículo)) extrae la información requerida. Los usuarios también pueden extraer enlaces de ellos para que Scrapy pueda continuar rastreando la página siguiente

Project pipeline (Pipeline): responsable de procesar entidades extraídas de páginas web por rastreadores. Su función principal es persistir entidades y verificar. la validez de las entidades, Borrar información innecesaria. Cuando el rastreador analiza la página web, se enviará a la canalización del proyecto y los datos se procesarán a través de varias secuencias específicas.

Middleware del descargador: un marco ubicado entre el motor Scrapy y el descargador. Maneja principalmente solicitudes y respuestas entre el motor Scrapy y el descargador.

Middleware Spider: el marco entre el motor Scrapy y el rastreador, utilizado para procesar la entrada de respuesta de la araña y la salida de solicitud.

Middleware del programador: middleware entre el motor Scrapy y el programador, utilizado para enviar solicitudes y respuestas desde el motor Scrapy al programador.

El flujo de trabajo de Scrapy es aproximadamente el siguiente:

Primero, el motor obtiene un enlace (URL) del programador y lo utiliza para el resto del scraping

El motor encapsula la URL en una solicitud (Solicitud) y la pasa al descargador, que descarga el recurso y lo encapsula en una respuesta (Respuesta)

Luego,

El el rastreador analiza la respuesta

Si se analiza un elemento, se pasa a la canalización de la entidad para su posterior procesamiento.

Si se resuelve el enlace (URL), la URL se entregará al despachador para su posterior procesamiento.