npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

nexo-aio-downloader

v1.4.1

Published

Download video/photo from multiple sites

Downloads

389

Readme

All In One Downloader

Download Media From Multiple Website Using One Library.

Allmost all downloader scrape directly from the sites without 3rd api.

Available Sites

Still Adding New More...

  • [✅] Instagram
  • [✅] Facebook
  • [✅] Tiktok
  • [✅] Twitter
  • [✅] Youtube
  • [✅] GoogleDrive
  • [✅] Sfile
  • [✅] Pixiv
  • [✅] Mega
  • [✅] Snack
  • [✅] Bilibili / Bstation

Required

For Youtube & Bilibili you need ffmpeg installed

LInux Example

sudo apt update
sudo apt install ffmpeg
ffmpeg -version

Windows Example

  1. Download FFmpeg:

    • Visit the FFmpeg Download page.
    • Click the "Windows" link and choose a build provider like gyan.dev or BtbN.
  2. Extract the ZIP File:

    • Download and extract the ZIP file (e.g., ffmpeg-release-full.7z) using 7-Zip or WinRAR.
  3. Add to PATH:

    • Copy the path to the bin folder (e.g., C:\path\to\ffmpeg\bin).
    • Go to "Control Panel" > "System" > "Advanced system settings" > "Environment Variables."
    • Edit the Path variable and add the copied path. Save changes.
  4. Verify Installation:

    • Open Command Prompt and run:
      ffmpeg -version

Usage

Installation:

npm i nexo-aio-downloader

Example

For more example will added in future.

const nexo = require("nexo-aio-downloader");

// Some Example Url
const listUrl = {
    twitter: "https://twitter.com/x_cast_x/status/1809598797603041498?t=tXO1JdAR1Avm2BY5wNQX-w&s=19",
    instagram: "https://www.instagram.com/reel/C9cFHKIySEu/?igsh=NnhmdmppdHo3dm9o",
    facebook: "https://www.facebook.com/share/r/WsMBxDEAWcMVXCf9/?mibextid=D5vuiz",
    tiktok: "https://vm.tiktok.com/ZSYnnbXW7",
    "google-drive": "https://drive.google.com/file/d/1E8fOgl4nu4onGR756Lw2ZAVv6NgP1H74/view?usp=drive_link",
    sfile: "https://sfile.mobi/5g9STNCU525"
}

(async () => {
    // All In One For Available Sites
    const result = await nexo.aio('any_url')
    console.log(result)

    // Instagram Downloader
    const insta = await nexo.instagram(listUrl.instagram)
    console.log(insta)

    // Facebook Downloader
    const fb = await nexo.facebook(listUrl.facebook)
    console.log(insta)

    // ETC....
})()

Youtube Example

const nexo = require("nexo-aio-downloader");

// Example Url
const youtubeUrl = 'https://youtu.be/X_-449tJ7ys?si=iZoyMxNfqZC1iYKf'


// Playlist Example
const playlistUrl = 'https://www.youtube.com/playlist?list=PL8mG-RkN2uTzbbUgvbn2YzBLLU3wktwo0'

// 1: 144p || 2: 360p || 3: 480p || 4: 720p || 5: 1080p || 6: 1440p || 7: 2160p || 8: highestaudio/mp3/audio || 9: bitrate List
const quality = 3

// Check Available Bitrate For Audio
const bitrateList = 9

// Playlist Need Directory
// If Null Will Create New ./temp Directory
const dirPath = './youtube'

(async () => {
    // Download Custom Quality Youtube
    const youtube = await nexo.youtube(youtubeUrl, quality)
    console.log(youtube)

    // The Download Will Saved Into Folder
    const youtubePlaylist = await nexo.youtubePlaylist(playlistUrl, quality, dirPath)
    console.log(youtubePlaylist)

    // Download Custom Bitrate Audio
    const bitList = await nexo.youtube(youtubeUrl, bitrateList)

    /**
    Ouput Bitrate Example
    {
        "creator": "@ShiroNexo",
        "status": "true,
        "data": {
            "bitrateList": [
                {
                    "codec": "opus",
                    "bitrate": 160,
                    "itag": 251
                },
                {
                    "codec": "mp4a.40.2",
                    "bitrate": 128,
                    "itag": 140
                },
                // Etc...
            ]
        }
    }
    **/

    const customAudio =  await nexo.youtube(youtubeUrl, 140)
    console.log(customAudio)
    // ETC....
})()

Pixiv Example

For R-18 works require cookie

const nexo = require("nexo-aio-downloader");

// Example Url
const pixivUrl = 'https://www.pixiv.net/en/artworks/120829610'// Support URL And IllustID

//Example Batch Download
const userUrl = 'https://www.pixiv.net/en/users/25030629' // Support URL And UserID
const type = 'illust' // illust || manga || novels || mangaSeries || novelSeries || default was illust

// You Can Use The PHPSESSID= Cookie.
const cookie = '55511249_rVrZ0ygXjti1WfuDahh4yCDE4Qo5UUqNK' // This Just Example Cookie

(async () => {
    // Without Cookie
    const pixiv = await nexo.pixiv(pixivUrl)
    console.log(pixiv)

    // Download using cookie
    const pixiv18 = await nexo.pixiv(pixivUrl, cookie)
    console.log(pixiv18)

    // Download Batch
    const pixivbatch = await nexo.pixivBatch(pixivUrl, cookie, type)
    console.log(batch)
})()

How To Get Cookie:

  1. Login to pixiv using your account
  2. Open the developer tools (F12, Ctrl+Shift+I, or Cmd+J)
  3. Go to the Application tab
  4. Go to the Storage section and click on Cookies
  5. Look for the PHPSESSID
  6. Open the object, right click on value and copy your session token.

PHPSESSID

Bilibili Example

const nexo = require("nexo-aio-downloader");

// Example Url
const biliUrl = 'https://www.bilibili.tv/id/video/4791529255207424?bstar_from=bstar-web.homepage.recommend.all

// 144P || 240P || 360P || 480P || 720P
const quality = '480P' // Default 480P

(async () => {
    // Download Custom Quality Youtube
    const bili = await nexo.bilibili(biliUrl, quality)
    console.log(bili)
})()

Example Using Proxy

For like instagram that have ip limit

const nexo = require("nexo-aio-downloader");
const { HttpsProxyAgent } = require('https-proxy-agent');

const username = 'example_user'
const password = 'example'
const hostname = 'ex.ample.com'
const port = 6060

const httpsProxyAgent = new HttpsProxyAgent(`http://${username}:${password}@${hostname}:${port}`); // Use HttpsProxyAgent

// Some Example Url
const url = "https://www.instagram.com/reel/C9cFHKIySEu/?igsh=NnhmdmppdHo3dm9o"

(async () => {
    // Using Proxy
    const result = await nexo.aio(url, httpsProxyAgent)
    console.log(result)
})()

License

nexo-aio-downloader is licensed under the MIT License. Please refer to the LICENSE file for more information.