Busco un desarrollador Python con extensa experiencia en scraping con Scrapy para dar apoyo y desarrollar evolutivos de una aplicación existente.
Importante: Descartaré automáticamente a cualquier candidato que pregunte algo que esté explicado en este texto, al demostrar poco interés en el proyecto o poca comprensión lectora.
Importante 2: No busco alguien que sepa extraer por web scraping un montón de datos de una web determinada. Repito, no busco eso. Leed con detenimiento.
Busco un desarrollador Python para realizar ajustes en una aplicación existente que, por medio de scraping, recupera cierta información concreta a demanda de determinadas webs.
Por las características del proyecto, los ajustes constantes y las nuevas funcionalidades requeridas constantemente, buscamos también alguien con posibilidad de establecer una colaboración a medio o largo plazo con una dedicación de 10 o 20 horas semanales (y con picos puntuales de más dedicación).
La tarea para la que busco desarrollador ahora mismo es la siguiente:
Tengo un proyecto tecnológico basado en web scraping. Este scraping es especial porque implica atender solicitudes que nos envían desde un sistema externo para obtener determinados documentos personales de páginas gubernamentales (navegando a través de ellas con el certificado digital de una persona).
El scraping se realiza utilizando Scrapy, pero las llamadas HTTP se realizan usando una librería proporcionada por nuestro cliente que ejecuta las llamadas HTTP autenticadas. La capa de autenticación no es particularmente relevante, simplemente hay que saber que las llamadas HTTP hay que hacerlas a través de la librería facilitada por el cliente, y no podemos usar Selenium ni otras alternativas de navegación, solo postprocesado de las respuestas con Scrapy o similar.
Los procesos de scraping consisten en navegar por ciertas páginas webs, rellenando formularios para obtener acceso a ciertos documentos, descargarlos y subirlos a un sistema externo a través de la llamada a un endpoint de una API concreta. Las páginas por las que debemos navegar a veces son de navegación sencilla (HTML, enviando datos por formularios, etc.) y en otros casos implica interactuar con aplicaciones JavaScript para conseguir los mismos resultados.
Por tanto, hay que tener la experiencia y la habilidad para gestionar el scraping tanto web sencillo como interactuando con JavaScript (entendiendo que las llamadas HTTP deben realizarse necesariamente con la librería de nuestro cliente, ya que no podemos usar cualquier framework como Selenium por la incompatibilidad con la capa de autenticación por certificado PKCS11 que manejamos).
La aplicación está ahora mismo en producción y procesando peticiones de forma regular (procesa un centenar de peticiones únicas al día). No es un sistema de web scraping de captura masiva de datos, se obtienen documentos concretos a demanda.
La primera tarea (que no la única, pues esto pretende ser una colaboración a largo plazo) sería reconstruir el spider para que pueda obtener la misma información que antes, pero siguiendo la nueva navegación de la web que lo proporciona.
Project Overview: Aplicación existente en Python/Django que realiza acciones de scraping en ciertas webs para obtener, a demanda, 1 a 1, ciertos documentos de ciertas personas (para lo cual nos autenticamos en ellas con un certificado digital PKCS11 en cloud, realizando obligatoriamente la navegación y las llamadas HTTP a través de una librería proporcionada por nuestro cliente).
Skills Needed: Django, Python, Web Scraping
#J-18808-Ljbffr