Packagist Scraper โ€” PHP Composer Packages & Downloads avatar

Packagist Scraper โ€” PHP Composer Packages & Downloads

Pricing

from $0.0005 / package scraped

Go to Apify Store
Packagist Scraper โ€” PHP Composer Packages & Downloads

Packagist Scraper โ€” PHP Composer Packages & Downloads

Look up exact PHP Composer packages or search Packagist in bulk and get clean structured data: latest version, total/monthly/daily downloads, favers, type, license, authors, requirements, repository and homepage. Built for dependency audits, dev tooling and n8n.

Pricing

from $0.0005 / package scraped

Rating

0.0

(0)

Developer

hiper soft

hiper soft

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Packagist Scraper โ€” PHP Composer Package Metadata, Versions, Downloads & Requirements

Look up exact PHP Composer packages by name or search Packagist in bulk and get back clean, structured JSON for every package: latest version, total, monthly and daily download counts, favers, package type, license, authors, requirements, and repository and homepage links. Built for PHP developers, dependency auditors and OSS analysts who need reliable, ready-to-use Composer package data. Export to JSON, CSV or Excel.

Features

  • ๐ŸŽฏ Exact lookups โ€” pass precise vendor/name packages like monolog/monolog, guzzlehttp/guzzle or symfony/console and get one clean record each.
  • ๐Ÿ”Ž Bulk search โ€” run a free-text query (http client, logging, orm) and collect matching packages up to your limit.
  • ๐Ÿ“Š Download metrics โ€” capture total, monthly and daily downloads plus favers for popularity and trend analysis.
  • ๐Ÿงพ Licenses & requirements โ€” every record includes license, type and the latest version's requires map for fast auditing.
  • ๐Ÿ”— Ready-to-use links โ€” repository, homepage and the canonical Packagist url.
  • ๐Ÿงฉ Integrations โ€” plug the output straight into n8n, Make, Zapier and more.
  • โš™๏ธ Reliable by design โ€” retry-with-backoff and graceful handling of missing packages so runs finish cleanly.

What you get

Each package becomes one clean JSON record.

{
"name": "monolog/monolog",
"description": "Sends your logs to files, sockets, inboxes, databases and various web services",
"latestVersion": "3.10.0",
"downloads": { "total": 1051647307, "monthly": 18488587, "daily": 337950 },
"favers": 22272,
"repository": "https://github.com/Seldaek/monolog",
"type": "library",
"license": ["MIT"],
"authors": ["Jordi Boggiano"],
"requires": { "php": ">=8.1", "psr/log": "^2.0 || ^3.0" },
"homepage": "https://github.com/Seldaek/monolog",
"url": "https://packagist.org/packages/monolog/monolog",
"ok": true
}

Output schema

FieldTypeDescription
namestringPackage name in vendor/name form.
descriptionstringPackage description / summary.
latestVersionstringLatest published version.
downloadsobjectDownload counts: total, monthly and daily.
faversintegerNumber of users who favorited the package.
repositorystring (URL)Source repository URL.
typestringComposer package type (e.g. library, symfony-bundle).
licensearraySPDX license identifiers.
authorsarrayPackage author names.
requiresobjectRequirements of the latest version (package โ†’ version constraint).
homepagestring (URL)Project homepage.
urlstring (URL)Canonical Packagist page for the package.
okbooleantrue for a fetched package; false with an error for one that could not be found.

Input

{
"packages": ["monolog/monolog", "guzzlehttp/guzzle", "symfony/console"],
"search": "http client",
"maxItems": 100
}
FieldDescription
packagesExact vendor/name packages to look up. Always fetched, in addition to any search results.
searchFree-text query matching package name and description. Matches are collected up to maxItems.
maxItemsMaximum number of packages to collect from the search query (1โ€“5000).

Provide packages, search, or both in a single run.

Use cases

  • Audit the licenses and requirements of the packages in your composer.json before shipping.
  • Track download momentum to compare competing packages in a category.
  • Build a catalog of packages for a topic (e.g. HTTP clients) for research or content.
  • Enrich an internal dependency dashboard with versions, descriptions and repo links.

Pricing

Pay-per-event: you're billed a small amount per package scraped โ€” you only pay for what you get. See the Pricing tab for current rates.

FAQ

How many packages can I scrape per run? Add any number of exact vendor/name packages in the packages field and collect up to maxItems (5000) more from a search query โ€” all in one run.

What's the output format? Structured JSON โ€” one record per package with fields such as latestVersion, downloads, favers, type, license, authors and requires. Export as JSON, CSV, Excel or via the API.

What happens to a package name that doesn't exist? It's returned as a record with ok: false and an error, so a typo never breaks the run โ€” every other package is still scraped.

Can I use this with n8n? Yes. Run the actor from the Apify node for n8n and map the package records straight into your workflow โ€” enrich a dependency list, trigger alerts on new versions, or sync package data into a database or spreadsheet.

Can I connect this Actor to other apps? The Packagist Scraper works with almost any cloud service or web app thanks to integrations on the Apify platform: Make, Zapier, Slack, Google Drive and many more, plus the Apify API, JavaScript/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.

Tracking packages across ecosystems? Pair this with our other developer-data scrapers:

  • npm Package Scraper โ€” search and look up npm packages with metadata, dependencies and downloads.
  • PyPI Package Scraper โ€” metadata, dependencies, licenses and downloads for Python packages.
  • RubyGems Scraper โ€” Ruby gems with downloads, versions, licenses and dependencies.
  • crates.io Scraper โ€” Rust crates with downloads, versions, license and repository links.

Notes

This actor reads only publicly available package data from Packagist. It is an independent tool and is not affiliated with, endorsed by, or sponsored by Packagist, Composer or their maintainers; "Packagist" and "Composer" are trademarks of their respective owners. Original clean-room implementation.