2

OpenLibrary's borrowed books are just simple jpgs that can be easily downloaded and saved - but to do it manually is a bit of a pain.

Is there any software that can download the jpgs one by one and save them to the disk?


edit: the files are all contained in a single zip file but can only be viewed individually - if there's a way that I don't need to keep changing the numbers and downloading the files myself - that would be great.

2
  • What I did was I used IDM's (Internet Download Manager's) Batch Download feature. If you are still interested, please comment if you wish for me to elaborate.
    – Sanoo
    Dec 17, 2016 at 4:08
  • I am interested. Does this method still work, and could you elaborate? Thanks Jan 9, 2019 at 17:54

1 Answer 1

2

Neither an older version of FF, nor current versions of Chrome or IDM seemed to see the pages as images that could be saved. I tried some of the "cache viewer" utilities, such as those from Nirsoft, with some success, but all the pages did not seem to be consistently retained in the browser cache.

The best I have been able to do is an AutoHotKey script with MS Edge as the browser. It's a bit slow (about 20 ppm) because it has to have some delay for pages loading. Edge does seem to allow the pages to be images that can be saved from the UI that Chrome and FF do not.

/*
"Borrow" the book to be exported in MS Edge.
With the book open, in the lower right switch to "one page view"
Note the total number of pages and be sure you are on page 1
  [Or move to the page at which you want to start exporting]
Suggest maximizing the browser
With the mouse pointer over the page image, hit Ctrl+j.
Enter the number of pages to export and click ok/Enter
Navigate to the folder where you want to save the page images, creae a new one if needed
Click Save
At this point the script should start sending keystrokes to export the pages
  [Note the script relies on MS Edge being the active window, so the mouse
   pointer should remain over the book page image during script execution]
Occasionally a page will not load fast enough (the script allows 1.5 seconds), in that case you will
  see a popup menu with "Load image" at the top.  Select that, then right-click over the page again
  and select "Save image as ...".  The script should continue executing with the page it has paused at.
*/

#NoEnv
SendMode Input

^j::
  InputBox, pages, , Number of pages?
  if (not ErrorLevel) and (pages is digit)
  {
    prompted = FALSE
    Loop, %pages%
    {
      Click Right
      Sleep, 400
      Send, v
      WinWaitActive, Save As
      if prompted = TRUE
        Send, {enter}
      Else
      {
        WinWaitClose, Save As
        prompted = TRUE
      }
      Sleep, 1000
      Send, {right}
      Sleep, 1500
    }
  }
  Return
2
  • Welcome new user! Can you share your AutoHotKey script with us? Jun 22, 2022 at 5:51
  • 1
    Updated my answer with AHK script code. Jun 23, 2022 at 6:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.