Práctica de proyecto de rastreador
ilustrar
Blog personal del autor
Blog de pimientos fritos con olla caliente
Todos los proyectos son proyectos de capacitación y intercambio de autores. Si hay alguna infracción, contáctenos para eliminarla . Es para aprender y compartir solo y no puede llevar a cabo ninguna actividad comercial .
Debido a problemas de tiempo en la finalización del programa, algunos proyectos pueden no ser reutilizados .
Ver nota.txt para notas de práctica
Este proyecto se actualizará continuamente
Para obtener algunas explicaciones prácticas del proyecto, consulte la estación B: https://space.bilibili.com/35242527/channel/collectiondetail?sid=1590251
A continuación se muestra la calificación personal para la dificultad de rastreo del sitio web
| calificación | Logo | Descripción de la dificultad |
|---|
| Huevo de araña | 0 | empezando |
| Araña joven | 00 | Cruzó el umbral |
| Pequeña araña | * | primario |
| Araña grande | ** | Un poco más alto que el junior |
| Araña gigante | *** | Dificultad media |
| Araña radiante | + + | Dificultad moderada y superior |
| Araña venenosa | ++ | Más difícil |
| Rey araña | +++ | Desastre |
| Espíritu de araña | REY | infierno |
Catálogo de proyectos
gráfico TD;
Conceptos básicos-> solicitud;
Conceptos básicos-> Análisis de HTML y clientes habituales;
Conceptos básicos-> Scrapy;
Conceptos básicos-> rastreador asíncrono de alto rendimiento;
Conceptos básicos-> Faper;
Automatización-> Selenium
Automatización-> dramaturgo;
Capítulo avanzado-> Caso integral;
Capítulo avanzado-> JS Tema inverso;
JS Tema inverso-> Cifrado de datos de encabezado o respuesta de respuesta;
JS Tema inverso-> Detección de huellas digitales del navegador;
JS Tema inverso-> Artículo de Webpack;
JS Tema inverso-> Detección ambiental;
JS Tema inverso-> wasm;
Código de verificación-> Slider;
Código de verificación-> Haga clic para seleccionar;
Cargando Biblioteca de terceros utilizada en el proyecto
pip install requests # requests库,爬虫的开始
pip install curl_cffi # 标准tls请求库
pip install lxml # xpath提取数据
pip install playwright # 自动化需要
pip install ddddocr # 识别验证码
pip install selenium # 自动化需要,推荐playwright
pip install scrapy # 爬虫框架
pip install " feapder[all] " # 新一代爬虫框架
pip install pycryptodome # python标准密码库
pip install pyexecjs2 # python调用js代码
pip install m3u8 # 下载m3u8视频
pip install prettytable # 格式化输出
pip install tqdm # 进度条
pip install loguru # 强大的日志工具库
pip install retrying # 强大的重试工具
npm install crypto-js/cryptojs # 二选一,js标准密码库
npm install jsdom # js模拟浏览器的dom和bom
npm install tough-cookie # 浏览器cookie
Lo esencial
Pedido
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| Asistente de caballeros | Página web de Baidu | El primer programa de rastreadores | haga clic aquí |
| Asistente de caballeros | Identificación de UA | Crawl inverso inicial | haga clic aquí |
| Asistente de caballeros | Traducción de Baidu | Conocer la solicitud de publicación | haga clic aquí |
| Asistente de caballeros | Películas de Douban | Base | haga clic aquí |
| Asistente de caballeros | Consulta de ubicación de KFC | JSON Practice | haga clic aquí |
Analización de HTML y artículos regulares
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| Cuasi nudo | Obtener falso | LXML PARSING | haga clic aquí |
| Cuasi nudo | 4K Imagen arrastrando | lxml y resuelva el problema de codificar errores | haga clic aquí |
| Cuasi nudo | 58 | LXML y PAGING CRAWL | haga clic aquí |
| Cuasi nudo | BS Conceptos básicos | BS inicial | haga clic aquí |
| Cuasi nudo | caso de BS | BS práctico | haga clic aquí |
| Cuasi nudo | Conceptos básicos de XPath | Xpath inicial | haga clic aquí |
| Cuasi nudo | análisis de xpath | Practica xpath | haga clic aquí |
| Cuasi nudo | Conceptos básicos regulares | Regulación inicial | haga clic aquí |
| Cuasi nudo | Ejercicios regulares | Reglas prácticas | haga clic aquí |
| Cuasi nudo | Reanudación de rastreo | El pequeño completo completo | haga clic aquí |
escrapaz
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| El gran caballero | bossjob | Gastamiento de la página de nivel 1, puede no estar disponible | haga clic aquí |
| El gran caballero | Bola de doble color | Todos son operaciones básicas de franqueo | haga clic aquí |
| El gran caballero | imagen | Todos son operaciones básicas de franqueo | haga clic aquí |
| El gran caballero | Política de sol | Todos son operaciones básicas de franqueo | haga clic aquí |
| El gran caballero | Datos de auto yi gateo | Con JS Reverse, es solo un análisis de datos JSON de nivel de entrada y a gran escala | haga clic aquí |
| El gran caballero | Red de belleza escolar | Todos son operaciones básicas de franqueo | haga clic aquí |
| El gran caballero | Noticias | Todos son operaciones básicas de franqueo | haga clic aquí |
| El gran caballero | Novela de 17k gateo | Todos son operaciones básicas de franqueo | haga clic aquí |
Rastreador asincrónico de alto rendimiento
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| Asistente de caballeros | Conocer frasco | Conocimiento básico | haga clic aquí |
| caballero | Conceptos básicos de la piscina de hilos | Conocimiento básico | haga clic aquí |
| El gran caballero | Meinv Image Batch Grasting | Base | haga clic aquí |
| El gran caballero | Imagen de celebridades arrastrándose | Base | haga clic aquí |
| El gran caballero | Coroutina multitarea | Base | haga clic aquí |
| El gran caballero | Aplicación de grupo de subprocesos | Base | haga clic aquí |
orador
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| El caballero del cuervo | Recopilación de datos de Xiaohongshu | Use el Faper de modo aire para personalizar la tubería de almacenamiento CSV. En el futuro, se reescribirán más modos y se agregarán más funciones. También necesitamos agregar información adicional. | haga clic aquí |
Automatización
selenio
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| Asistente de caballeros | Operación automática básica | Operación de automatización básica | haga clic aquí |
| Asistente de caballeros | Iniciar sesión de simulación | Automatización de práctica | haga clic aquí |
| Asistente de caballeros | Cadena de acción y procesamiento de Ifream | Automatización de práctica | haga clic aquí |
| Asistente de caballeros | Navegador sin cabeza y anti-detección | práctica | haga clic aquí |
| caballero | 12306 Inicio de sesión de simulación | Sobre todo no disponible | haga clic aquí |
| caballero | damai.com | Sobre todo no disponible | haga clic aquí |
dramaturgo
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| caballero | Código Postal | Consulte el código postal a través de la dirección, use el método de sincronización, incluidas las operaciones de espera y la selección de diferentes tablas de acuerdo con la situación, y use PANDAS para operar en archivos de Excel al mismo tiempo | haga clic aquí |
| El gran caballero | Anti-rastreando usando un navegador local | A veces detectamos cuando usamos automatización. Utilizamos navegadores locales para antiinterrumpir. Como es un navegador local, nuestro estado de sesión y el estado de cookies existen. Es decir, accedemos directamente al sitio web en el que registramos, lo cual es mucho más conveniente y no requiere que creemos el contexto del navegador. | haga clic aquí |
| El caballero de la tierra | Recopilar información | La dificultad es que cada sitio web tiene diferentes estilos, todos los datos no son los mismos y el número es grande. Es difícil escribir reglas regulares, y también es difícil lidiar con asíncrono. El almacén solo enumera 10 de las páginas, lo que requiere que el escritor tenga una cierta comprensión de las reglas regulares y el dramaturgo asincrónico. | haga clic aquí |
| El gran caballero | Navegador anti-detección | Cree un navegador anti-detección a través del archivo JS de Daniu, que puede evitar la mayoría de las detecciones | haga clic aquí |
| El caballero de la tierra | Novela VIP Qidian gateando | Eviante el paso de las novelas VIP de CSS de las novelas VIP de Qidian a través de capturas de pantalla, los puntos de conocimiento utilizados son: colocaciones de cajas, capturas de pantalla, deslizamiento, procesamiento de límites y fusiones de capturas de pantalla. Esta solución no es la solución óptima, todos son bienvenidos a agregar | haga clic aquí |
Capítulo avanzado
Caso completo
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| caballero | Un cierto sitio web de poesía | Código de verificación relacionado con la solución del código de verificación de imágenes y de verificación --- DDDDOCR | haga clic aquí |
| El gran caballero | Rastreador de idiomas | Use Internet para convertir el texto en idiomas, apoyar los idiomas chinos, inglés y coreanos | haga clic aquí |
| El gran caballero | Estación B Completa | Compruebe si le gustas al usuario, extraiga la lista de mensajes y extraiga la lista de LIKE | haga clic aquí |
| El caballero de la tierra | Un sitio web de video | Descarga de video M3U8, resuelva la situación con clave y sin clave, descarga de nivel de entrada M3U8 y múltiples subprocesos | haga clic aquí |
| El caballero de la tierra | INS CRAWLER | Para la extracción de parámetros de página y analizando archivos JSON | haga clic aquí |
| El caballero de la tierra | Douyin Data Crawl en todo el sitio | Incluida la descarga de imágenes de video, el rastreo de comentarios, la información del usuario que se arrastra ... en la actualidad, algunas interfaces también han comenzado la detección de XB. Si necesita usar la interfaz detectada, debe agregar XB para obtener los datos. Ahora reintegra la firma. Puede encontrar el archivo JS para obtener la firma en GitHub, colocarlo en el mismo directorio que el archivo douyin y nombrarlo xb.js. UP proporciona un repositorio de código que es de código abierto en GitHub. El repositorio está marcado en el código, y se puede usar en la actualidad. | haga clic aquí |
| El caballero de la tierra | Datos de Weibo que se arrastran por el sitio | Incluyendo buscar usuarios, buscar publicaciones, descargar comentarios, descargar álbumes de usuarios, página de inicio del usuario, información del usuario ... | haga clic aquí |
| Nivel desconocido | Rueda de reptiles | Personalmente, la encapsulación secundaria de métodos de rastreadores de uso común es conveniente para el desarrollo posterior | haga clic aquí |
JS Tema inverso
Solicitar encabezado o cifrado de datos de respuesta
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| caballero | Datos de nenniu | Solicitar cifrado de encabezado, cifrado corporal de respuesta | haga clic aquí |
| caballero | Índice de entretenimiento | Introducción básica | haga clic aquí |
| caballero | Datos de Yien | Cifrado corporal de respuesta | haga clic aquí |
| caballero | De todos modos, comprobar | Cifrado corporal de respuesta | haga clic aquí |
| El gran caballero | transacción pública de FJS | Cifrado de parámetros ofuscados | haga clic aquí |
| El gran caballero | El único arte | Código Dynamic JS en ejecución | haga clic aquí |
| El caballero de la tierra | Un sitio web meteorológico | JS Dynamic JS Clave dinámica Parámetro dinámico Anti-DEBUG | haga clic aquí |
| El caballero de la tierra | Un sitio web de fútbol | Cifrado múltiple del cuerpo de solicitud, es difícil localizar la ubicación cifrada | haga clic aquí |
| El caballero de la tierra | Música de Wangyiyun | Implementar datos de datos en todo el sitio | haga clic aquí |
| El caballero de la tierra | transacción pública GDS | Parámetros confusos, debe encontrar ubicaciones | haga clic aquí |
| El caballero de la tierra | Una cierta traducción | Solicitar el descifrado de respuesta de cifrado no es difícil | haga clic aquí |
| El caballero de la tierra | Iniciar sesión en la estación B | Contraseña encriptada RSA, la tercera generación de clics de texto se puede seleccionar y los clics de texto se pueden encontrar en la sección Código de verificación | haga clic aquí |
pájaro web
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| El caballero de la tierra | Minerales de China | Webpack básico, algoritmo de cifrado de versión estándar, simple, se puede implementar de varias maneras (NodeJS, Python y Decode) | haga clic aquí |
Prueba ambiental
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| El caballero del cuervo | libro rojo | Detección de entorno XHS XS, debe poner cookies y LocalStorage en el archivo usted mismo | haga clic aquí |
| El caballero del cuervo | bossjob | __zp_s ...__ Detección del entorno, JS son diferentes todos los días, necesita inventar algunos entornos y modificar JS, hay una detección de módulos, etc. | haga clic aquí |
| El caballero del cuervo | Ape Man Studies Pregunta 1 2023 | Modifique mágicamente MD5 y AES para eliminar algunos honeypots y reponer el entorno del navegador | haga clic aquí |
| El caballero de la tierra | Ele.me parámetros | Obtener el parámetro BX_ET a través del dramaturgo | haga clic aquí |
| El caballero del cuervo | Parámetro anti_content de PDD | Este no es un entorno de reposición, sino un algoritmo para la deducción. El cifrado de PDD es probablemente el mismo en diferentes sitios, y los valores de algunos objetos son diferentes. Las funciones principales encriptadas son todas lógicas | haga clic aquí |
| El caballero de la tierra | Actualizar elementos de reclutamiento directo de jefe Haga clic para desbloquear IP, así que acabo de encontrar uno en línea | Este clic de trayectoria de clic para seleccionar es la tercera generación de pruebas extremas | Actualizado en el archivo de jefe |
cifrado WASM
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| El caballero del cuervo | Cierta aerolínea | El contenido de operación WASM realiza el contenido de cifrado y el descifrado Parámetros del encabezado Actualización de cifrado Alibaba Sistema V2 Detección del sistema Alibaba V3 (adquisición automática), por lo que todos los parámetros de cifrado se han resuelto | haga clic aquí |
Detección de huellas digitales del navegador
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| El caballero de la tierra | Yi Jiubi | Primero, es el cuerpo de solicitud cifrado, seguido de la detección de huellas digitales de TLS. Actualmente, la solicitud de página de inicio se pasa utilizando una biblioteca de terceros. | haga clic aquí |
Código de verificación
Control deslizante
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| El gran caballero | Control deslizante de JD | Después de obtener la imagen, podemos usar DDDDOCR para identificar el control deslizante y luego generar la trayectoria y enviar la solicitud. La trayectoria aquí está escrita por el jefe. Primero, prepare un punto de referencia, deslícelo manualmente de izquierda a derecha, y luego una trayectoria temblorosa, y luego empalme dos trayectorias (no sé por qué la trayectoria que me deslizo no pasó, así que usé directamente la trayectoria del jefe) | haga clic aquí |
| El gran caballero | Alibaba 226 | Esta actualización de dramaturgo es relativamente simple de obtener | haga clic aquí |
| El gran caballero | FEIGUA obtiene el control deslizante de código de verificación | Esta actualización de dramaturgo es relativamente simple de obtener | haga clic aquí |
Haga clic para elegir
| Marca de dificultad | Nombre del proyecto | Reponer | Navegación rápida |
|---|
| El caballero del cuervo | La tercera generación de puntos para elegir | Solicitamos la interfaz para obtener imágenes en secuencia de acuerdo con la orden de solicitud, y después de obtener la información de la imagen, la enviamos a la interfaz de identificación para obtener las coordenadas seleccionadas en punto. Después de obtener las coordenadas, convertimos las coordenadas y las enviamos a los JS para generar la trayectoria. Después de obtener la trayectoria, solicitamos la interfaz para obtener el validar | haga clic aquí |
Historia de la estrella
patrocinador
Si cree que este almacén es útil para usted en los rastreadores de aprendizaje y las instrucciones inversas, puede patrocinar al autor y pedirle al autor que tome una taza de té de leche ~. !
(¿Su apoyo puede hacer feliz al autor todo el día?)