google chrome

Warum speichert Google Chrome ein JPG-Bild stattdessen im WEBP-Format?

Ich versuche,ein vermeintliches JPG-Bild in Chrome zu speichern und lade stattdessen immer ein WEBP-Bild herunter.

Ich verwende Chrome Version 80.0.3987.163 unter macOS Catalina (10.15.4) und versuche, ein JPG-Bild von einer Website herunterzuladen. Auch wenn die Bild-URL eindeutig eine .jpg -Erweiterung hat, wenn ich CMD+S drücke oder mit der rechten Maustaste auf das Bild klicke und Bild Save image as... auswähle, wird mir das Dateisystemdialogfeld zum Speichern angezeigt und das Format-Dropdown ist auf eingestellt Google's WEBP wie hier gezeigt .

Meine Vermutung ist,dass sie eine JPG-Erweiterung für ein Bild verwenden,das eigentlich ein WEBP ist,aber das ist ziemlich irreführend.Ist das möglich? Gibt es eine Möglichkeit,das Bild als JPG herunterzuladen?

Dateierweiterungen sind für HTTP ziemlich irrelevant: Wenn der Server Content-Type: image/webp , dann ist es ein WebP-Bild, Punkt. (Vergleichen Sie damit, dass die meisten Websites .html nicht mehr in ihren URLs verwenden, obwohl sie HTML-basierte Webseiten bereitstellen.)

Das auf die Website hochgeladene Originalbild war eine JPEG-Datei; Sie werden Ihnen jedoch über ein „Content Delivery Network“ (in diesem Fall Akamai) bereitgestellt. Die Aufgabe des CDN besteht darin, diese Dateien zu hosten und die Last auf den realen Servern der Website zu reduzieren, aber viele CDNs bieten auch verschiedene Optimierungsfunktionen, um Bandbreite für Clients zu sparen – dies beinhaltet oft das erneute Komprimieren von Bildern, das Minimieren von JS/CSS-Dateien und so weiter.

Akamai sieht sich den User-Agent- Header der HTTP-Anforderung an, um zu erraten, welches das beste Format ist, das von Ihrem Browser unterstützt wird (obwohl es seltsamerweise den Accept -Header ignoriert ) und konvertiert das Bild automatisch in WebP, wann immer es möchte. Die URL bleibt gleich, aber der Content-Type- Header der Antwort gibt das neue Format an.

Abgesehen davon, dass Sie eine „User Agent Spoofer“-Erweiterung installieren oder einen anderen Browser ausprobieren, können Sie auch die URL kopieren und die curl - oder wget -Tools über Terminal verwenden, um sie herunterzuladen (macOS sollte mindestens eines davon integriert haben). Das CDN nimmt normalerweise "Nicht-Browser"-Tools von der Webpification-Funktion aus.

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



Reduzierung des CDN-Datenverkehrs

WebP ist ein Bildformat, das derzeit von Google entwickelt wird und auf einer Technologie basiert, die mit dem Kauf von On2 Technologies erworben wurde.

Wenn das User-Agent - Feld in Ihrem HTTP(S)-Anforderungsheader zeigt, dass Sie einen neueren Browser verwenden, können Content Delivery Network (CDN) -Server originale .jpg - oder .png -Bilder in diesem neuen WebP-Format bereitstellen , um den Datenverkehr zu reduzieren. Nichtsdestotrotz behalten diese bereitgestellten Bilddateien ihre ursprüngliche Dateierweiterung; was wirklich irreführend und trügerisch ist.

Auf GNU/Linux-Systemen besteht eine Lösung darin, die Original-Image-Datei mit dem Befehl wget oder curl herunterzuladen.

Mehrere Google Chrome-Erweiterungen bieten eine Möglichkeit, als WebP bereitgestellte Bilder in einem anderen Bildformat zu speichern. Allerdings ist nur eine Erweiterung Open-Source- Software; das ist Bild speichern als Typ .

Diese und alle anderen ähnlichen Erweiterungen haben jedoch einen ärgerlichen Nachteil. Zwischen dem Speichern rufen diese Erweiterungen nicht das Verzeichnis ab , in dem das vorherige Bild gespeichert wurde. Dies kann an der Sandboxing-Richtlinie von Google in Bezug auf Erweiterungen liegen oder auch nicht. Wie auch immer, ich habe ein GitHub-Problem darüber geöffnet.