Skip to content

motebaya/pinterest-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pinterest-JS

Pinterest media downloader tool

nodejs pinterest argparse axios axios-logger chalk cli-progress winston License: MIT

NodeJS CLI tool for downloading Pinterest media such as images and videos using web scraping methods.

Features:

  • Command-line interface (CLI) for easy usage
  • Support for downloading both images and videos
  • Metadata extraction and caching
  • Progress tracking with visual feedback
  • Organized output structure by username
  • Support for bulk downloads from user profiles
  • Configurable verbose logging

Features list:

Feature Description
Image Download Download high-quality images from Pinterest
Video Download Download videos in 720p quality
User Profiles Download all media from a user's profile
Metadata Cache Save and reuse metadata for faster downloads
Progress Bar Visual progress tracking for downloads
Organized Output Files organized by username and media type

Install:

git clone https://github.com/motebaya/pinterest-js
cd pinterest-js
npm install

Usage (CLI):

$ node cli
usage: cli.js [-h] [-u] [-p] [-t] [-c] [-m] [-o] [-V]

    Pinterest CLI downloader
 © Copyright: @github.com/motebaya - 2025

optional arguments:
  -h, --help      show this help message and exit
  -u, --username  pinterest username
  -p, --pin       pinterest post url or id
  -t, --type      type of media to download, default: image. (image, video)
  -c, --cache     using metadata from cache, <username> or <pinId> if exists
  -m, --metadata  save metadata to <output>/<id>/metadata.json
  -o, --overwrite overwrite existing files

additional:
  -V, --verbose   verbose output to console
  • -u, --username: Pinterest username to download from
  • -p, --pin: Pinterest post URL or ID to download
  • -t, --type: Media type to download (image or video)
  • -c, --cache: Use cached metadata for faster downloads
  • -m, --metadata: Save metadata alongside downloaded files
  • -o, --overwrite: Overwrite existing files
  • -V, --verbose: Enable detailed console output

Note

Downloaded media will be saved in the pinterest-downloader-output directory, organized by username and media type. Metadata files are stored in a separate metadata subdirectory for each user.

Output Structure:

pinterest-downloader-output/
├── @username/
│   ├── images/
│   │   ├── metadata/
│   │   │   └── [pinId].json
│   │   └── [image files]
│   └── videos/
│       ├── metadata/
│       │   └── [pinId].json
│       └── [video files]

Dependencies:

  • axios: HTTP client for making requests
  • cli-progress: Progress bar visualization
  • winston: Logging
  • argparse: Command-line argument parsing

License

This project is licensed under the MIT License.

About

Bulk/single pinterest.com media downloader based specified profile username,pinID, or url post

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published