41

I'm trying to save what appears to be a JPG image from Chrome and always end up downloading a WEBP image instead.

I'm on Chrome Version 80.0.3987.163 on macOS Catalina (10.15.4) and I'm trying to download a JPG image from a website. Even though the image URL clearly has a .jpg extension, when I hit CMD+S or right click the image and select Save image as... I'm presented with the file system dialog to save it and the format dropdown is set to Google's WEBP as shown here.

My guess is that they're using a JPG extension on an image which is actually a WEBP, but it's quite misleading. Is that possible? Is there a way to download the image as a JPG?

frabonomi
  • 537

9 Answers9

34

File extensions are quite irrelevant for HTTP: if the server says Content-Type: image/webp, then it's a WebP image, period. (Compare to how most websites don't use .html in their URLs anymore even though they serve HTML-based webpages.)

The original image uploaded to the website was an JPEG file; however, it is served to you through a "content delivery network" (Akamai in this case). The CDN's job is to host these files and reduce load on the website's real servers, but many CDNs provide various optimization features to save bandwidth for clients as well – this often includes re-compressing images, minifying JS/CSS files, and so on.

Akamai looks at the HTTP request's User-Agent header to guess what the best format supported by your browser would be (although, oddly, it ignores the Accept header) and automatically converts the image to WebP whenever it wants to. The URL remains the same, but the response's Content-Type header indicates the new format.

Other than installing a "User Agent spoofer" extension or trying a different browser, you could also copy the URL and use the curl or wget tools through Terminal to download it (macOS should have at least one of them built-in). The CDN will usually exempt "non-browser" tools from the webpification feature.

curl -Of https://mosaic03.ztat.net/vgs/media/catalog-lg/NI/12/2O/0H/NQ/12/NI122O0HN-Q12@9.jpg
grawity
  • 501,077
18

CDN data traffic reduction

WebP is an image format currently developed by Google, based on technology acquired with the purchase of On2 Technologies.

If the User-Agent field in your HTTP(S) request header reveals you are using a recent browser, content delivery network (CDN) servers may serve original .jpg or .png images in this new WebP format to reduce data traffic. Nonetheless, these served image files will keep their original file extension; what is truly misleading and deceiving.

On GNU/Linux systems, one solution consists in downloading the original image file using either the wget or curl command.

Several Google Chrome extensions offer a way to save images served as WebP in another image format. However, only one extension is open-source software; which is Save image as Type.

This and all other similar extensions have one annoying drawback, though. Between saves, these extensions do not recall the directory to which the previous image was saved. This may or may not be due to Google's sand-boxing policy concerning extensions. Anyhow, I opened a GitHub issue about it.

Save  image as Type

5

Not sure how long this will work, but it works as of today (08/07/2021).

As @user1686 mentioned above, If the image ext. is jpg or png in the URL, but it tries to save as a Webp image then it is likely being served from a CDN - as mentioned above - for various reasons.

To circumvent this, add a '?' after the image name, and then download it as the original file type - jpg or png.

This '?' makes the CDN think the original version of the image, not the cached/optimized (eg webp version) of this image, needs to be served.

Try this - Open this image in a new tab: https://crework.axiomthemes.com/wp-content/uploads/2017/06/cursor.png

Notice, it's a .png, but if you try to save it, it saves as a .webp

rename the image URL to this: https://crework.axiomthemes.com/wp-content/uploads/2017/06/cursor.png?123

and resave it. It works!

3

I found a workaround for it, I opened IE11 which is installed by default and is ancient enough to not know what webP is.. and it saved as JPG like it should :-)

finally there is some use for this relic.

1

I was able to save a jpg using Google Chrome by right-click (and hold), then dragging the image onto my computer desktop, and THEN choosing the "save as" context menu. For some reason dragging the mouse cursor gave me the option to save as jpg. So rather than save as "61wpPwFUwtL._SL1500_.webp" it saved as "61wpPwFUwtL._SL1500_.jpg". Easy-peasy.

LeftyMaus
  • 163
0

Or you can simply visit the image URL using Safari, then save the image in its original format (jpg, png etc).

0

Success! (Thanks LeftyMaus)

Here's what I did:

(As at today 2024-02-01, using current Chrome v121.x, Windows 10, Extensions off. right-handed.)

  1. Open the WEBP image of interest in a new tab via right-click then select "Open image in new tab" from the pop-up. Okay, you knew this.
  2. If your Chrome does not have free real estate outside the browser window (i.e., is fullscreen), reduce Chrome to a window for convenience.
  3. [Optional] Confirm via right-click, select "Save image as..." presents the Save As dialog box with file name extension / file type as .webp . Press Cancel.
  4. While hovering over the image, right-click and hold. In my case, my mouse pointer is the magnifying glass with plus sign.
  5. While holding, drag that magnifying glass to a quiet space beyond the Chrome window.
  6. Release the right-button.
  7. Now Save As dialog box is presented instead with the file name extension / file type as .jpg. (or .png if source was that).

In my test, dragging on top of other application peeking in background (a spreadsheet) that I released "onto" was successful, because this is not a drag-n-drop event. I also tested just beyond the Chrome window frame dragging to a free spot on the toolbar near the system tray. I tested as well dragging to another side-by-side Chrome window. Worked every case.

I used this random website for testing:

https://axureboutique.com/blogs/product-design/build-an-e-commerce-product-center-from-scratch

NOTE: Skipping step 1 (opening the WEBP image in a new tab), instead proceeding steps 2-5 on the image while staying within the website page, .HTML was presented to me in the Save As box. So don't go that route.

-3

First of all, your suspicions are probably correct as when I manually change the extension to .jpg, it cannot be recognized.

Secondly, if you still want to download it as a jpg file, append .jpg to the download filename, Like this:

Append .jpg

If a warning alert pops up, click "use .jpg" as pictured below. Click "use .jpg"

-4

Webp is a image format developed by Google for web graphics, you can rename the file using file.jpeg naming to open it normally, this happens because there are many extensions like jpeg, png, bmp, webp, Google saves image in webp format because it was originally webp image not jpeg I guess.

George G.
  • 312