Indexes open directories listings in 100+ supported formats, including FTP, Google Drive, GoIndex (alternatives).
Written in C# with .NET (Core), which means it is cross platform!
Downloading is not (yet) implemented, but is already possible when you use the resulting file into another tool (for most of the formats).
Downloading with wget:
wget -x -i theurlsfile.txt
Downloading with aria2c (Does not support directory structure..):
aria2c -i theurlsfile.txt
If you have improvements, supply me with a pull request! If you have a format not yet supported, please let me know.
For builds (64-bit) for Windows, Linux and Mac, or ARM/ARM64 builds for Pi:
When using the self-contained releases you don't need to install the .NET (Core) Runtime.
When you are NOT using the self-contained releases, you need to install the latest/current Runtime version of .NET 6:
Command line parameters:
||Url to scan|
||Number of threads (default 5)|
||Number of seconds for timeout|
||Quit after scanning (No "Press a key")|
||Automatically copy the Reddits stats once the scan is done|
||Save JSON file|
||Do not save URLs file|
||Do not show Reddit stats markdown|
||Uploads urls file|
||Exact file sizes (WARNING: Uses HEAD requests which takes more time and is heavier for server)|
||Does a speed test after indexing|
||Use custom default User Agent|
||Output file to use for urls file|
OpenDirectoryDownloader.exe --url "https://myopendirectory.com"
./OpenDirectoryDownloader -u "https://myopendirectory.com"
If you want to learn more or contribute, see the following paragraphs!
When you want to copy (
C key or
-c flag) the stats at the end on Linux you need to have xclip installed.
Every release will automatically push an image to the Docker Hub:
Run it like:
docker run --rm -v c:/Scans:/app/Scans -it koalabear84/opendirectorydownloader --quit --speedtest
It will save the URLs files onto C:\Scans (windows), or replace with a custom folder on other OS-ses.
* You can also run it without
-v c:/scans:/app/Scans if you don't want to save the results on your host.
git clone https://github.com/KoalaBear84/OpenDirectoryDownloader
dotnet build .
./OpenDirectoryDownloader --url "https://myopendirectory.com"
For Linux (Might not be needed since .NET 6):
Then, if you need to package it into a binary, you can use warp-packer
When you have cloned the code, you can also run it without the SDK. For that, download the "Runtime" and do "
dotnet run ." instead of build.
For Google Drive scanning you need to get a Google Drive API credentials file, it's free!
You can use a many steps manual option, or the 6 steps 'Quickstart' workaround.
Wow, they really made a mess of this..
Alternative method (easier):
This will 'abuse' a 'Quickstart' project.
On the first use, you will get a browser screen that you need to grant access for it, and because we haven't granted out OAuth consent screen (This app isn't verified), we get an extra warning. You can use the "Advanced" link, and use the "Go to yourappname (unsafe)" link.
If you like OpenDirectoryDownloader, please consider supporting me!