Publicado en 2024

Desarrollando una pequeña aplicación con flet

Qué es flet

1.1 Por qué usar flet

Leer más ...


Desarrollando un Bot de Scraping Evasivo

En el mundo del scraping, enfrentamos constantemente la batalla contra mecanismos de defensa diseñados para detectar y bloquear nuestros bots. Hoy, quiero compartirles un proyecto personal que busca no solo sortear estas defensas, sino hacerlo de manera eficiente y escalable.

Al intentar extraer datos de un sitio web que utiliza Radware, un servicio avanzado contra bots de scraping, me vi en la necesidad de crear una solución que pudiera superar estos obstáculos. Aquí les presento cómo logré desarrollar un bot de scraping que no solo logra su cometido sino que evita ser detectado por mecanismos de anti-bots.

Leer más ...


Explorando el Desafío de Mil Millón de Filas en Python

El desafío de procesar mil millón de filas de datos es una tarea intimidante que pone a prueba la capacidad de cualquier lenguaje de programación, incluido Python. En este artículo, exploraremos cómo Python, con su naturaleza interpretada, se compara ante este reto colossal, adoptando estrategias ingeniosas y aprovechando la potencia de las librerías disponibles para manejar una tarea de procesamiento de datos de tal magnitud.

Este recorrido comienza con una implementación simple en Python puro, utilizando diccionarios para agrupar mediciones por ciudad y calcular valores mínimos, máximos y promedios de temperatura. Esta aproximación tomó 9 minutos y 28 segundos para ejecutarse en un archivo de texto de 13GB, una diferencia notable frente a la implementación base en Java que corre en 3 minutos y 12 segundos.

Leer más ...


Cómo Hacer Fork y Pull Request en el Blog de Python Perú

Bienvenidos a la comunidad de Python Perú y a este Blog que marca el inicio de una nueva etapa de la comunidad.

Python Perú Logo

Leer más ...


Introducción a la criptografía con Python

Para poder implementar correctamente las medidas mínimas de seguridad en tus proyectos con Python, en particular las aplicaciones web, iremos desarrollando una serie de artículos en donde el objetivo no es simplemente decirte que paquetes utilizar y que te vueltas un experto en copiar y pegar sino que, por el contrario, entiendas los conceptos más básicos que te permitan apreciar y evaluar de forma más efectiva y ¿porque no decirlo? profesional el nivel de seguridad de tu código.

Es la disciplina que estudia las técnicas para transformar la información desde su formato original a otro que permita protegerla del acceso por parte de usuarios no autorizados de forma que se pueda prevenir cualquier adulteración y certificar su procedencia.

Leer más ...


Scraping con Python utilizando la biblioteca requests

Python developer

El scraping web es una técnica poderosa para extraer datos de páginas web de manera automatizada. Python, con su amplio ecosistema de bibliotecas, proporciona herramientas robustas para realizar scraping de manera eficiente. En este artículo, exploraremos cómo utilizar la biblioteca requests de Python para realizar scraping básico.

Leer más ...


Explorando JupyterLite e integrándolo en tu blog de Sphinx

JupyterLite

Como desarrollador y entusiasta de data, siempre me encuentro explorando nuevas tecnologías y herramientas para mejorar mis proyectos y documentación. Recientemente, mi curiosidad me llevó a descubrir JupyterLite, una implementación ligera de JupyterLab que se ejecuta completamente en el navegador sin necesidad de un servidor. Intrigado por sus capacidades, decidí experimentar con la integración de JupyterLite en mi blog de Sphinx utilizando la extensión jupyterlite-sphinx. En esta publicación, compartiré mi experiencia de integrar JupyterLite en mi documentación y los pasos que tomé para hacer que funcione sin problemas con mi blog construido con Sphinx.

Leer más ...


ULID para la generación de identificadores únicos en Python

En el universo de la programación moderna, la generación de identificadores únicos es esencial para una amplia variedad de aplicaciones, desde sistemas de bases de datos distribuidas hasta plataformas de gestión de usuarios.

ULID, que significa “Universally Unique Lexicographically Sortable Identifier”, es un tipo de identificador único diseñado para ser ordenado lexicográficamente y garantizar seguridad para la concurrencia. Su estructura combina un timestamp en milisegundos con una porción aleatoria, lo que garantiza su unicidad y permite su ordenación cronológica. Estas características lo hacen especialmente útil en aplicaciones que requieren una alta eficiencia en la generación y gestión de identificadores únicos, especialmente en entornos distribuidos.

Leer más ...


Leyendo archivos CSV con Pandas

En esta publicación, discutiremos cómo leer archivos CSV usando pandas, una biblioteca básica para el manejo de datos escritos en Python.

Python developer

Leer más ...


Cómo Redactar Posts en el Blog de Python Perú y no Morir en el Intento

Debo iniciar las líneas de este post dándoles la bienvenida a la comunidad de Python Perú y a este Blog que marca el inicio de una nueva etapa de la comunidad.

Python Perú Logo

Leer más ...


Un Generador de Artículos para Blogs con formato Markdown usando GPT-4 Turbo

openai

Hace poco se me ocurrió, en vista a que Ider Delzo y yo decidimos crear este blog, crear un script en Python para que autogenere un review de un video en YouTube usando nada menos que el API de GPT-4 Turbo de OpenAI.

Leer más ...


Mojo: El Nuevo Lenguaje de Programación que Promete Revolucionar Python

Es 4 de mayo de 2023 y los desarrolladores en todo el mundo están a punto de experimentar una revolución en la programación productiva con la llegada de Mojo. Concebido como una superposición de Python, este nuevo lenguaje promete ser hasta 35,000 veces más rápido, un hito significativo considerando la pervivencia de Python como el lenguaje dominante en inteligencia artificial.

Sin embargo, es bien sabido que Python, a pesar de su popularidad, batalla con la velocidad de ejecución. Situación que ha dado ventaja a lenguajes como Rust y C++ en tareas que demandan un alto rendimiento. Pero ¿Qué hace a Mojo tan especial y cómo logra estas impresionantes cifras de rendimiento?

Leer más ...


Manejo de time zones en Python

Una de las tareas muy frecuentes para un desarrollador es el manejo de fechas, y siempre es un dolor de cabeza manejar los time zones, si bien, actualmente existen librerías que nos ayudan enormemente en este proceso podemos repasar básicamente cómo implementar time zones por nosotros mismos.

Python developer

Leer más ...