NPM Package Scraper – Download Stats, Deps, Versions avatar

NPM Package Scraper – Download Stats, Deps, Versions

Pricing

from $2.00 / 1,000 results

Go to Apify Store
NPM Package Scraper – Download Stats, Deps, Versions

NPM Package Scraper – Download Stats, Deps, Versions

Scrape NPM package download stats, dependencies and versions. NPM API alternative and registry data export to CSV/JSON. No token, no login.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Logiover

Logiover

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

NPM Package Scraper — Download Stats, Dependencies & Versions

Discover and export NPM packages by keyword, name, maintainer or scope, and enrich each one with full registry metadata and download stats. This actor is an NPM package scraper and npm download stats + dependency intelligence tool built on the official open NPM Registry API and the npmjs downloads API.

For every package you get version, license, repository, maintainers, daily/weekly/monthly/yearly downloads, dependents, dependencies and full version history. No token, no proxy, no scraping tricks — export CSV, JSON or Excel.


What you get

Per-package output fields include:

  • name, scope, version, description, keywords
  • license — SPDX ID
  • homepage, repositoryUrl, repositoryType, bugsUrl, npmUrl
  • publishedAt, createdAt, lastModified
  • maintainers, maintainersCount, publisherUsername, author
  • distTags, versionCount, versionHistory — all versions + publish dates
  • engines, exports, main, type
  • dependencies, devDependencies, peerDependencies, optionalDependencies, dependencyCount
  • deprecated, isDeprecated
  • tarballUrl, unpackedSize, fileCount, shasum, integrity
  • dailyDownloads, weeklyDownloads, monthlyDownloads, yearlyDownloads
  • downloadsHistory — optional per-day time series
  • dependentsCount, searchScore, readme (optional), scrapedAt

Use cases

  • Devtool competitive intelligence — find every package matching a keyword and rank by weekly downloads.
  • Dependency security & SBOM — feed package metadata and dependency trees into a vulnerability or SBOM workflow.
  • OSS maintainer outreach — pull popular packages' maintainers and repository URLs for sponsorship or partnership.
  • Trend monitoring — track download deltas with the history series to surface fast-growing packages.
  • Package health dashboards — combine deprecation status, last-publish date and maintainer count to answer "is this package alive?".
  • Package marketplace seeding — discover every MIT/Apache-2.0 package in a niche above a download floor.
  • Maintainer talent intel — find every maintainer of a given scope for recruiting or partnerships.

Input reference

FieldTypeDefaultDescription
searchTermsarray[]NPM registry search queries (paginated 250/page).
packageNamesarray[]Direct package names, including @scope/name.
maintainerstring""Search-only filter: maintainer:<username>.
scopestring""Search-only filter: scope without the leading @.
keywordsarray[]Search-only keywords:<tag> filters.
maxResultsPerSearchinteger25Hard cap per search term.
fetchPackageDetailsbooleantruePull full registry doc (maintainers, versions, deps, license).
fetchDownloadsStatsbooleantrueAdd day/week/month/year download counts.
fetchDownloadsHistorybooleanfalseAdd per-day downloads time series.
downloadsHistoryRangestringlast-monthRange for history (preset or YYYY-MM-DD:YYYY-MM-DD).
fetchReadmebooleanfalseInclude raw README markdown per package.
minMonthlyDownloadsinteger0Drop packages below this monthly download floor.
includeDeprecatedbooleantrueSet false to skip deprecated packages.
minVersionPublishDatestringnullKeep only packages with a latest version published on/after this date.

How to use

  1. Add Search Terms (e.g. scraper, react component library) and/or exact Package Names (including scoped @org/pkg).
  2. Optionally narrow with Maintainer, Scope or Keyword filters.
  3. Keep Fetch Full Package Details and Fetch Downloads Stats on for the richest records; enable Downloads History for daily trends.
  4. Apply filters such as Minimum Monthly Downloads or Minimum Latest-Version Publish Date to drop noise.
  5. Run, then export to CSV, JSON or Excel — or pull via the Apify API.

Example: top scraping packages with full stats

{
"searchTerms": ["scraper", "crawler", "puppeteer"],
"maxResultsPerSearch": 50,
"fetchPackageDetails": true,
"fetchDownloadsStats": true,
"minMonthlyDownloads": 1000
}

Example: direct package list with downloads history

{
"packageNames": ["react", "vue", "svelte", "solid-js", "preact", "lit"],
"fetchDownloadsStats": true,
"fetchDownloadsHistory": true,
"downloadsHistoryRange": "last-year"
}

How it works

  1. Searchregistry.npmjs.org/-/v1/search paginates up to 250 packages per page per term.
  2. Per-package docregistry.npmjs.org/{pkg} returns every version, repository, maintainers, license and time map.
  3. Downloads point statsapi.npmjs.org/downloads/point/{range}/{pkg} for last-day / week / month / year.
  4. Downloads time seriesapi.npmjs.org/downloads/range/{range}/{pkg} returns one entry per day.

Names are deduplicated across search terms and direct lists. No authentication — the registry and stats APIs are public.


FAQ

Can I export to CSV or Excel?

Yes. Every Apify dataset exports to CSV, Excel, XML, JSONL or RSS from the run page or via the API.

Can I get the exact list of packages that depend on package X?

Not directly — NPM no longer exposes a stable dependents API, so the search snippet returns an approximate dependentsCount. For full reverse-dependency enumeration, use GitHub code search.

Does it cover private registries or PyPI / RubyGems / Cargo?

No. It targets the public registry.npmjs.org for JavaScript / Node.js packages only. Each other ecosystem would be a separate actor.

How is this different from npm-registry-fetch or pacote?

Those are Node libraries you call from your own code. This actor adds cross-source merging, pagination guardrails, normalized output, optional download history, deprecation/staleness filtering and Apify-native scheduling, webhooks and dataset views.

Does it download tarballs?

No — only metadata. tarballUrl is provided so you can fetch tarballs downstream if needed.

Is this an NPM API alternative for download stats?

Yes. It wraps the official NPM registry and npmjs downloads APIs into a no-code, paginated workflow, so you get a structured NPM download stats dataset without writing your own API client.

How do I export NPM package data to CSV or JSON?

Run a search or package list, then export the dataset to CSV, JSON, JSONL or Excel from the run page or the Apify API — a ready-made npm registry data export with downloads and dependency fields.

Can I scrape npm package versions and dependencies without login?

Yes. No token, no proxy and no login are required. The actor reads the public registry, so you can extract version history, dependencies and devDependencies for any public package.


Changelog

2026-06-07

  • Docs: added coverage for NPM API alternative use, exporting npm package data to CSV/JSON, and scraping versions and dependencies without login.

Uses the public NPM Registry and npmjs downloads APIs. Not affiliated with npm, Inc.