https://github.com/patrickkfkan/imagefap-dl
ImageFap gallery downloader
https://github.com/patrickkfkan/imagefap-dl
downloader imagefap scraper
Last synced: about 1 month ago
JSON representation
ImageFap gallery downloader
- Host: GitHub
- URL: https://github.com/patrickkfkan/imagefap-dl
- Owner: patrickkfkan
- Created: 2023-12-16T14:48:48.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-01T10:49:42.000Z (3 months ago)
- Last Synced: 2025-04-02T23:58:52.634Z (about 2 months ago)
- Topics: downloader, imagefap, scraper
- Language: TypeScript
- Homepage:
- Size: 330 KB
- Stars: 36
- Watchers: 4
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# imagefap-dl
An ImageFap gallery downloader written in [Node.js](https://nodejs.org).
## Installation
First, install [Node.js](https://nodejs.org/en).
Then, in a terminal, run the following command:
```
npm i -g imagefap-dl
```## Usage
In a terminal:
```
// Download all galleries uploaded by johndoe to the current directory
$ imagefap-dl "https://www.imagefap.com/profile/johndoe/galleries"// Download a single gallery to "C:\Downloads"
$ imagefap-dl -o "C:\Downloads" "https://www.imagefap.com/gallery/1234567"// Download from the list of URLs contained in file "urls.txt"
$ imagefap-dl urls.txt// urls.txt
------------------------------------------------------
https://www.imagefap.com/profile/johndoe/galleries
https://www.imagefap.com/gallery/1234567# Lines starting with # are ignored
# https://www.imagefap.com/gallery/9876543 --> Ignored
```> URLs can be copy-and-pasted from the ImageFap website. Make sure they conform to one of the formats listed in the usage guide (below).
To display usage guide:
```
$ imagefap-dl -h
```
Output:
```
Usageimagefap-dl [OPTION]... TARGET
TARGET
Target can be a URL or a file containing a list of URLs to download from.
Supported URL formats
---------------------Download all galleries by a user:
- https://www.imagefap.com/profile//galleries
Download all galleries in a folder:
- https://www.imagefap.com/profile//galleries?folderid=
- https://www.imagefap.com/organizer//
- https://www.imagefap.com/usergallery.php?userid=&folderid=
Download a single gallery:
- https://www.imagefap.com/gallery/
- https://www.imagefap.com/gallery.php?gid=
- https://www.imagefap.com/pictures//Download all user favorites:
- https://www.imagefap.com/showfavorites.php?userid=
Download user favorites by folder:
- https://www.imagefap.com/showfavorites.php?userid=&folderid=
File
----
Files must be in plain text format with each URL placed in its own line.
Lines starting with # are ignored.Options
-h, --help Display this usage guide
-o, --out-dir Path to directory where content is
saved. Default: current working
directory
-d, --dir-structure Combination of flags controlling the
output directory structure of
downloaded galleries. See "Directory
structure flags" section for available
flags.
-n, --seq-filenames Add sequential numbers to beginning of
filenames based on display order of
images.
-f, --full-filenames Use full filename for image downloads.
If not specified, filenames may be
truncated. Note: getting full filenames
involves extra page requests that will
increase download time.
-w, --overwrite Overwrite existing image files
-j, --no-json Do not save gallery info in JSON file
-m, --no-html Do not save original HTML
-l, --log-level Log level: 'info', 'debug', 'warn' or
'error'; set to 'none' to disable
logging. Default: info
-s, --log-file Save logs to
-r, --max-retries Maximum retry attempts when a download
fails. Default: 3
-c, --max-concurrent Maximum number of concurrent image
downloads. Default: 10
-p, --min-time-page Minimum time to wait between page fetch
requests. As a general rule, do not
set this lower than 2000, otherwise you
will likely get 'Too many requests'
errors. Default: 2000
-i, --min-time-image Minimum time to wait between image
download requests. Default: 200
--proxy Use the specified proxy. The URI
follows this scheme:
"protocol://[username:[password]]@host:port".
Protocol can be http, https, socks4 or
socks5.
--proxy-insecure Do not reject invalid certificate when
connecting to proxy through SSL / TLS.
Use this option for proxies with self-
signed certs.
-y, --no-prompt Do not prompt for confirmation to
proceedDirectory structure flags (--dir-structure)
When downloading a gallery, the following flags specify which directory is to
be included in the output directory structure:u If downloading user favorites, include directory for the user; otherwise,
include directory for uploader of the gallery (note: does not apply when
uploader is anonymous)
v Include "Favorites" directory (only applies when downloading user
favorites)
f Include directory for folder containing the gallery (note: does not apply
when downloading a single gallery)
g Include directory for the gallery itself
- No directory structure. All images will be downloaded to --out-dir.Default: uvfg
```## Changelog
v2.1.0
- Add proxy support ([#6](https://github.com/patrickkfkan/imagefap-dl/issues/6))
- Add support for downloading from multiple URLs ([#8](https://github.com/patrickkfkan/imagefap-dl/issues/8))v2.0.0
- Add support for downloading user favorites ([#5](https://github.com/patrickkfkan/imagefap-dl/issues/5))
- Add `--seq-filenames` option
- Bump minimum required version of Node.js to v18v1.2.0
- Add `--full-filenames` option ([#2](https://github.com/patrickkfkan/imagefap-dl/issues/2))v1.1.1
- Fix download of galleries from anonymous uploadersv1.1.0
- Optimize fetching of image URLs
- Misc bug fixesv1.0.0
- Initial release## License
MIT