Temapolis web scrapper

Ando de vacaciones y me aburría un poco así que he hecho un web scrapper de la web. Está alojado en Gitlab: https://gitlab.com/theme118/tema-scrapping. Tiene licencia GPLv3(aquí dejo la definición de la licencia GPLv3. La GPL es posiblemente la licencia más potente e importante del mundo… La tecnología con la que está hecha esta web la usa ^^): https://es.wikipedia.org/wiki/GNU_General_Public_License y usa Typescript(Ref: https://es.wikipedia.org/wiki/TypeScript) que es Javascript levemente tipado. No me enrollo en explicar que es cada cosa así que por eso os dejo los enlaces y si os interesa le echáis un vistazo.

Grosso modo, se ejecuta la API web y permite recuperar la información de la url especificada o de todos los posts existentes(unos 15.000 y pico), recupera uno a uno siguiendo un modelo de datos y lo guarda en una base de datos mongoDB. Los datos están representados usando JSON(Javascript Object Notation). En este ejemplo he extraído los datos de este post: https://temapolis.com/2024/02/19/canal-de-panama/. He sacado las imágenes, el vídeo incrustado, el texto, el título, el autor del post, las visitas y los likes y dislikes. Eso por la parte de contenido, del HTML se pueden sacar más cosas 🙂

Scrappingception. Escrapea el post hablando de scrapping.

¿el uso de todo eso? bueno, me apetecía recuperar datos.

Por supuesto tiene limitaciones. No puedo recuperar contenido no accesible desde el HTML, es decir, yo puedo recuperar y tratar contenido accesible por el navegador pero no la parte del servidor. Tampoco puedo recuperar contenido dentro de los iframe. Si incrustáis un post de X no puedo recuperar su contenido, como mínimo no directamente desde Temapolis. Esto es para evitar un tipo de ataque llamado XSS(Cross-stie scripting) y me parece correcto que tenga limites.

Si a alguno os gusta la programación web(esto son tecnologías web) este es un proyectillo con el que podéis aprender. Por cierto, ejemplo de tecnologías web: Discord, Element, Slack, la mitad de Steam(sí, Steam incrusta un Chromium viejuno), creo que el Spotiflis y absolutamente todas las PWA.

PS: Perdón, tenía la accesibilidad del código en privado y no se podía acceder a verlo. Ya deberíais poder.

Loading

Pruebas laborales

Fuente: https://wiselwisel.com/115297-2

Aprovecho para preguntaros, ¿qué opináis de las pruebas técnicas-prácticas?

NOTA: De las capturas de conversaciones no me creo ni una pero está bien para introducir el debate.

En mi sector a partir de cierto nivel las pruebas técnicas están a la orden del día. Lo normal son pruebas de algunas horas y suelen dejarte unos días para que se las envíes. E.g. picarse una API web usando X tecnología y hacerlo en alguna arquitectura en concreto(hexagonal). De hecho dado que ya tengo el proyecto base en las últimas pruebas lo que he hecho es mejorar la API o cambiar la capa de modelo(datos) e ir añadiendo la tecnología que me requerían.

Loading