google chrome

¿Por qué Google Chrome guarda una imagen JPG en lugar de WEBP?

Estoy tratando de guardar lo que parece ser una imagen JPG desde Chrome y siempre termino descargando una imagen WEBP en su lugar.

Tengo la versión 80.0.3987.163 de Chrome en macOS Catalina (10.15.4) y estoy tratando de descargar una imagen JPG de un sitio web. Aunque la URL de la imagen claramente tiene una extensión .jpg , cuando presiono CMD+S o hago clic con el botón derecho en la imagen y selecciono Save image as... Aparece el cuadro de diálogo del sistema de archivos para guardarla y el menú desplegable de formato está configurado en Google's WEBP como se muestra aquí .

Mi suposición es que están usando una extensión JPG en una imagen que en realidad es un WEBP,pero es bastante engañoso.¿Es posible? ¿Hay alguna forma de descargar la imagen como JPG?


Las extensiones de archivo son bastante irrelevantes para HTTP: si el servidor dice Content-Type: image/webp , entonces es una imagen WebP, punto. (Compárese con cómo la mayoría de los sitios web ya no usan .html en sus URL a pesar de que sirven páginas web basadas en HTML).

La imagen original cargada en el sitio web era un archivo JPEG; sin embargo, se le entrega a través de una "red de entrega de contenido" (Akamai en este caso). El trabajo de la CDN es alojar estos archivos y reducir la carga en los servidores reales del sitio web, pero muchas CDN también brindan varias funciones de optimización para ahorrar ancho de banda para los clientes; esto a menudo incluye volver a comprimir imágenes, minimizar archivos JS/CSS, etc.

Akamai mira el encabezado User-Agent de la solicitud HTTP para adivinar cuál sería el mejor formato compatible con su navegador (aunque, curiosamente, ignora el encabezado Aceptar ) y convierte automáticamente la imagen a WebP cuando lo desea. La URL sigue siendo la misma, pero el encabezado de tipo de contenido de la respuesta indica el nuevo formato.

Además de instalar una extensión "User Agent spoofer" o probar con un navegador diferente, también puede copiar la URL y usar las herramientas curl o wget a través de Terminal para descargarlo (macOS debe tener al menos uno de ellos integrado). La CDN generalmente eximirá a las herramientas "no del navegador" de la característica de pificación web.

curl -Of https://mosaic03.ztat.net/vgs/media/catalog-lg/NI/12/2O/0H/NQ/12/NI122O0HN-Q12.jpg



Reducción del tráfico de datos CDN

WebP es un formato de imagen actualmente desarrollado por Google, basado en tecnología adquirida con la compra de On2 Technologies.

Si el campo User-Agent en el encabezado de su solicitud HTTP(S) revela que está usando un navegador reciente, los servidores de la red de entrega de contenido (CDN) pueden servir imágenes originales .jpg o .png en este nuevo formato WebP para reducir el tráfico de datos. No obstante, estos archivos de imagen servidos mantendrán su extensión de archivo original; lo que es verdaderamente engañoso y engañoso.

En los sistemas GNU/Linux, una solución consiste en descargar el archivo de imagen original mediante el comando wget o curl .

Varias extensiones de Google Chrome ofrecen una forma de guardar imágenes servidas como WebP en otro formato de imagen. Sin embargo, solo una extensión es software de código abierto; que es Guardar imagen como tipo .

Sin embargo, esta y todas las demás extensiones similares tienen un inconveniente molesto. Entre guardados, estas extensiones no recuerdan el directorio en el que se guardó la imagen anterior. Esto puede deberse o no a la política de sandboxing de Google con respecto a las extensiones. De todos modos, abrí un problema de GitHub al respecto.