¿Cómo escribir un rastreador de Python?
Python en realidad tiene muchas bibliotecas de rastreadores, como urllib común, solicitudes, bs4, lxml, etc. Si está comenzando a usar rastreadores, puede obtener información sobre solicitudes y bs4 (BeautifulSoup), que son Para aprender, las solicitudes se usan para solicitar páginas y BeautifulSoup se usa para analizar páginas. Basado en estas dos bibliotecas, presentaré brevemente cómo Python rastrea los datos estáticos y dinámicos de las páginas web. El entorno es win10 python3.6 pycharm5.0, principalmente El contenido es el siguiente:
Python rastrea datos estáticos de páginas web
Esto es muy simple, solo solicite la página directamente de acuerdo con la URL Aquí hay un ejemplo de rastreo de contenido en la Enciclopedia de cosas embarazosas:
1. Aquí asumimos que el contenido de texto que queremos rastrear es el siguiente, que incluye principalmente los cuatro campos de apodo. , contenido, número divertido y número de comentario:
Abra el código fuente de la página web, la estructura de la página web correspondiente es la siguiente, es muy simple, todos los contenidos de los campos se pueden encontrar directamente:
2. Según la estructura de la página web anterior, podemos escribir código relevante para rastrear los datos de la página web. Primero, use solicitudes para solicitar la página de acuerdo con la dirección URL y luego use BeautifulSoup para analizar los datos. posicionamiento basado en etiquetas y atributos), de la siguiente manera:
La captura de pantalla que ejecuta el programa es la siguiente y los datos se han rastreado correctamente:
Python rastrea los datos dinámicos de la página web
En muchos casos, los datos de la página web se cargan dinámicamente. No se pueden extraer datos rastreando directamente la página web. En este caso, se necesita captura y análisis de paquetes para encontrar los datos cargados dinámicamente. archivo (por supuesto, también pueden ser otros tipos de archivos, como xml, etc.), y luego solicitamos analizar este archivo json, podemos obtener los datos que necesitamos. Aquí hay un ejemplo de cómo rastrear los datos dispersos en Renrendai. :
1. Aquí asumimos que los datos que rastreamos son los siguientes, e incluyen principalmente los cinco campos de tasa de interés anual, título del préstamo, plazo, monto y progreso:
2. Presione F12 para abrir las herramientas del desarrollador, haga clic en "Red" -gt; "XHR", actualice la página con F5 y podrá encontrar el archivo json cargado dinámicamente. La información específica es la siguiente:
Captura de pantalla del programa en ejecución Como se muestra a continuación, los datos se obtuvieron con éxito:
En este punto, hemos completado el uso de Python para rastrear la página web. datos. En general, todo el proceso es muy simple. Requests y BeautifulSoup son muy fáciles de aprender y dominar para los principiantes. Una vez que se familiarice con ellos, podrá aprender el marco del rastreador scrapy, que puede mejorar significativamente. Eficiencia de desarrollo. Es muy Sí, por supuesto, si hay cifrado, códigos de verificación, etc. en la página web, debe pensarlo detenidamente y estudiar las contramedidas. También hay tutoriales e información relevantes en Internet. Si está interesado, puede buscarlo. Espero que el contenido compartido anteriormente pueda serle de ayuda. Los comentarios y mensajes también son bienvenidos.