๐ฆ npm Package Scraper - Downloads & Dependencies
Pricing
from $1.60 / 1,000 results
๐ฆ npm Package Scraper - Downloads & Dependencies
Extract npm package data with download stats, dependencies, maintainers, and quality scores. Search by keyword, author, or get popular packages. Perfect for JavaScript ecosystem research, competitor tracking, and dependency analysis. Fast API-based extraction, pay-per-result.
Pricing
from $1.60 / 1,000 results
Rating
0.0
(0)
Developer
Ben
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
๐ฆ npm Package Scraper โ Downloads, Dependencies & Quality Scores
Extract structured data from the npm registry โ download counts, dependencies, maintainers, license info and npm quality scores โ for any JavaScript or TypeScript package. Pull the most popular packages, search by term, filter by keyword or maintainer, or look up exact packages by name. It's the npm ecosystem data you'd otherwise have to stitch together from three separate APIs, returned as one clean row per package. Export to JSON/CSV/Excel, run on a schedule, call via API, or connect to Make, Zapier or n8n.
๐ข What is the npm Package Scraper?
It turns any npm search, keyword, author or package list into a structured dataset. Pick a mode โ popular packages, a search query, a keyword/tag, an author/maintainer, or a list of exact package names โ and it returns each matching package with its metadata, weekly and monthly download counts, dependency tree, maintainers and npm's quality/popularity/maintenance scores. Built directly on npm's public registry, downloads and search APIs, so the data is live on every run.
What data does it extract?
- Package name, version & description
- Weekly and monthly download counts (
downloads_weekly,downloads_monthly) - Dependencies and dev dependencies (
dependencies,dev_dependencies) - Dependents count (how many packages depend on it, in details mode)
- Maintainers, author name & email, publisher
- License, homepage, repository URL and bugs URL
- Keywords/tags and TypeScript types flag (
has_types) - npm scores โ final, quality, popularity and maintenance (0โ1)
- Created & modified dates, required Node version and the npm package URL
โฌ๏ธ Input
Run it five ways โ most popular, search, by keyword, by author, or exact lookups:
| Field | Description |
|---|---|
scrapeMode | popular, search, keyword, author, or details |
searchQuery | Search term (required for search mode), e.g. react, express |
keyword | Package keyword/tag (required for keyword mode), e.g. cli, framework |
author | Author or maintainer username (required for author mode), e.g. sindresorhus |
packageNames | List of exact package names (required for details mode) |
sortBy | popularity, quality, maintenance or optimal |
maxResults | Cap the run (1โ1000) |
Example input
{"scrapeMode": "search","searchQuery": "graphql","sortBy": "popularity","maxResults": 50}
โฌ๏ธ Output
Every package is one clean row (view as a table, or export JSON / CSV / Excel):
{"name": "express","version": "4.19.2","description": "Fast, unopinionated, minimalist web framework","keywords": ["express", "framework", "web", "rest", "api"],"author_name": "TJ Holowaychuk","author_email": "tj@vision-media.ca","publisher_name": "wesleytodd","maintainers": ["dougwilson", "wesleytodd"],"license": "MIT","homepage": "http://expressjs.com/","repository_url": "https://github.com/expressjs/express","bugs_url": "https://github.com/expressjs/express/issues","npm_url": "https://www.npmjs.com/package/express","downloads_weekly": 32500000,"downloads_monthly": 140000000,"dependents_count": 78342,"dependencies": ["accepts", "body-parser", "cookie", "debug"],"dev_dependencies": ["eslint", "mocha", "supertest"],"created_at": "2010-12-29T19:38:25.450Z","modified_at": "2024-03-25T18:00:00.000Z","has_types": false,"node_version": ">= 0.10.0","score_final": 0.91,"score_quality": 0.94,"score_popularity": 0.95,"score_maintenance": 0.83,"scraped_at": "2026-06-26T15:30:00.000Z"}
๐ก Use cases
- ๐ Dependency auditing: review a package's dependency and dev-dependency tree, license and maintenance score before adding it to your stack.
- ๐ Ecosystem research: track download trends and maintenance health across competing packages in a category.
- ๐ ๏ธ Developer tooling: enrich dashboards, package explorers or internal catalogs with live npm metrics.
- ๐ข Competitive intel: monitor a maintainer's or company's published packages and their adoption.
โ FAQ
How do I scrape npm package data? Pick a scrapeMode (popular, search, keyword,
author or details), add the matching field (e.g. searchQuery or packageNames),
then Run. You get structured packages with downloads, dependencies, maintainers and
quality scores.
Do I need an API key? No. It reads npm's public registry, downloads and search APIs โ no login or token required.
How do I get the full dependency list and dependents count? Use
scrapeMode: details with packageNames. That mode reads the full registry record,
so it returns the complete dependency and dev-dependency lists plus an approximate
dependents count. Search-based modes return lighter metadata for speed.
What are the score fields? score_quality, score_popularity,
score_maintenance and score_final are npm's own 0โ1 scores from its search API โ
useful for ranking and comparing packages.
Can I find every package by a maintainer? Yes โ set scrapeMode: author and the
maintainer's npm username to list their published packages, sorted by popularity.
Does it cover scoped packages (e.g. @types/...)? Yes โ pass scoped names in
packageNames, and @types/* packages are automatically flagged with
has_types: true.
Why is the popular mode built from broad searches? npm's search API requires a
query, so popular mode runs several broad searches, merges the unique packages and
re-sorts them by weekly downloads โ giving you a clean list of high-traffic packages
without supplying a term yourself.
How many packages can it return? Up to your maxResults cap (1โ1000); search and
keyword modes paginate automatically.
Can I run it on a schedule or via API? Yes โ schedule recurring runs in Apify, call it via the API/SDK, or connect it to Make, Zapier or n8n.
Is scraping npm legal? It extracts publicly available registry data only. Use it responsibly for research and tooling, and follow applicable laws and npm's terms.
๐ You might also like
- GitHub Repository Intelligence โ repo stars, issues & contributor metrics
- Hacker News Intelligence โ tech news, jobs & Show HN launches
- Tech Stack Detector โ detect the technologies a website runs on
- VS Code Extensions Scraper โ Marketplace installs, ratings & publishers
Keywords: npm scraper, npm package scraper, npm registry API, npm download stats, package dependencies, dependency analysis, JavaScript ecosystem data, npm quality score, package metadata, maintainer lookup, TypeScript types, dev dependencies, npm API, software supply chain, package research.