All of the suggestions mentioned above would probably work, but I'm not a big fan of using browser extensions or add-ons. They tend to break when the browser is updated or they need updating - then features change and you have to learn how to use the new version.
Also, the link that you provided has 909 MP3 files to be downloaded.
(https://ia600604.us.archive.org/13/i...pense_Singles/)
If you opt not to use the script that I've provided below, then I would suggesting picking an option that automatically crawls the webpage so that you don't have to select each file to be downloaded. There are several tools that will crawl websites and download the items that you want... but they can be hard to learn how to use.
Here is how I would get the MP3 files that you want:
1) Make the folder where you want the files to go.
2) Copy/paste/run the script file below into that folder.
3) Click on the HTTPS link that Gator mentioned:
4) Paste the URL from that HTTPS page into the script's prompt.
5) Click OK to start the downloads.
Code:
Opt("TrayIconDebug", 1)
Global $current_handle, $element, $file, $FileArray, $link, $position, $running, $total, $track, $URL
HotKeySet("^+a", "_end_this")
$URL = InputBox("URL entry", "Paste the URL.", "Paste URL here.", "", 600, 100, 0, 0)
If @error = 1 Then Exit ;Cancel was selected
;FYI URL
;https://archive.org/details/OTRR_Suspense_Singles
;sample URL that can be pasted - 900+ files (20+GB)
;$URL = "https://ia600604.us.archive.org/13/items/OTRR_Suspense_Singles/"
$running = "AutoIt - " & $URL
If WinExists($running) Then
MsgBox(0, "AutoIt", "This script is already pulling files from:" & @CR & $URL)
Exit
EndIf
AutoItWinSetTitle($running)
$FileArray = StringSplit(BinaryToString(InetRead($URL)), @CRLF, 1)
$total = 0
For $element In $FileArray
$position = StringInStr($element, '.mp3">')
If $position Then $total = $total + 1
Next
$track = 0
For $element In $FileArray
$position = StringInStr($element, '.mp3">')
If $position Then
$track = $track + 1
$file = StringTrimLeft($element, 9)
$file = StringLeft($file, $position - 6)
$link = $URL & $file
$current_handle = InetGet($link, $file, 1, 1)
Do
ToolTip("Downloading " & $track & " of " & $total & " Press Ctrl + Shift + a to abort. " & InetGetInfo($current_handle, 0) & " bytes", 10, 10)
;TrayTip("Downloading " & $track & " of " & $total, "Press Ctrl + Shift + a to abort." & @CR & InetGetInfo($current_handle, 0) & " bytes", 100)
Sleep(333)
Until InetGetInfo($current_handle, 2)
InetClose($current_handle)
EndIf
Next
Func _end_this()
InetClose($current_handle)
FileDelete($file) ;delete current file in case it had not completed the download
Exit
EndFunc
After you install AutoIt* from here...
AutoIt Downloads - AutoItScript
...copy/paste the code above into a new script file.
You can sort of see that being done in second video in this post.
You do not need to compile the code...
...just run it as a text file.
You don't need to put it in the start up folder either.
*Right after the AutoIt installation completes, you might need to select an empty spot on the desktop and press F5. Doing that should rebuild/refresh the options that are available to you via Explorer's context menu (right click > New...).
The script has two download progress indicator. You can keep bot, pick one or remove both. Place a semicolon in front of ToolTip and/or TrayTip to turn them off. You can also move the ToolTip to another location if you want.
You can run as many copies of this script at the same time as you want. Just create as many folders as you want and copy/paste/run the script from that folder. The downloaded files go into that same folder that the script is in. If you want to run lots of these at the same time, either turn off the ToolTip and TrayTip progress indicators or just turn off the TrayTip and change the location of each ToolTip so that they do not overlap.
For example, you can change this part of the ToolTip line so that each copy of the script is painting the ToolTip in a different location:
....bytes", 10, 10)
For another copy that is running from another folder, you could use 20:
....bytes", 20, 10)
For another copy that is running from another folder, you could use 40:
....bytes", 40, 10)
For another copy that is running from another folder, you could use 60:
....bytes", 60, 10)
I've not tested those numbers - you might need a larger increment like 10, 50, 100, 150.....
edit: Minor change to the script:
It now prevents multiple copies of the script from downloading files from the same URL at the same time.