Alexander A. E.Full Stack Developer

¿Cómo encontrar imágenes similares con Python?

Publicado el: 24 Nov 2019

El problema: imágenes que no coinciden (y deberían coincidir)

Una de las tareas en Librera implica recopilar la información de un libro en base a su ISBN, para lo cual en algunos casos se recurre al webscraping.

En algunos casos, al obtener la portada de un libro desde algún servicio externo como Google Books API, Goodreads API o scrapeando alguna web verificábamos que obteníamos una portada incorrecta.

Nuestro proceso para obtener la portada de un libro implicaba:

  1. Consultar varias fuentes …

Proyectos personales del 2019

Publicado el: 16 Oct 2019

Mis proyectos Personales

Y para mi próximo truco, un post inusual.

Este año tengo dos proyectos que avanzo en mi tiempo libre (o que intento al menos).

Librera

Librera es un marketplace de libros originales el cual llevo en conjunto con algunos compañeros. El objetivo es agrupar a diversos vendedores, ya sean librerías, vendedores independientes u ocasionales y permitirles contar con un espacio en el que publicar sus libros.

Uno de los problemas que intentamos resolver es la dificultad para …

Webscraping básico con Python - I

Publicado el: 13 Feb 2019

¿Qué es el web scraping?

Es una técnica utilizada mediante programas de software para extraer información de sitios web. Usualmente, estos programas simulan la navegación de un humano en la World Wide Web ya sea utilizando el protocolo HTTP manualmente, o incrustando un navegador en una aplicación.1

Entre algunos tipos de contenidos que podríamos necesitar extraer tenemos a:

  • listados de noticias o empleos
  • lista de productos, sus imágenes y precios
  • relación de libros
  • otros

A modo de ejemplo, extraeré …

Instalar y configurar ModPageSpeed en nginx

Publicado el: 18 Sep 2018

Hoy estuve investigando cómo mejorar el puntage de Google PageSpeed Insights, el cual es una página de google que mide la velocidad de carga de un website además de brindar algunas recomendaciones para mejorar dichas estadísticas.

Investigando encontré ModPageSpeeed un módulo para nginx (y apache) que realiza varias de aquellas optimizaciones, algunas como:

  • Minificar el html
  • Unificar archivos css o js
  • Convertir formatos de imágenes (como de jpg a webp si el navegador lo soporta)

Instalación con nginx (ubuntu server …

Cómo hacer un form field de solo lectura en django

Publicado el: 22 Jun 2018

Para hacer un "Form Field" de solo lectura basta utilizar el atributo "attrs" de los widgets y agregar la propiedad readonly como en el siguiente ejemplo:

Antes:

from django import forms

class CommentForm(forms.Form):
    name = forms.CharField()

Después:

class CommentForm(forms.Form):
    name = forms.CharField(
        widget=forms.TextInput(attrs={'readonly':'readonly'})
    )

Observación:

Notemos que cuando un input es de solo lectura, el usuario no puede modificarlo pero se sigue enviando en el formulario.

Para desactivar el envío totalmente se …

1234567891011