CRAN R Package Scraper avatar

CRAN R Package Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
CRAN R Package Scraper

CRAN R Package Scraper

Scrapes R package metadata from the CRAN database (crandb.r-pkg.org). Search packages by query, fetch by name, or list recent releases.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Scrape R package metadata from the CRAN (Comprehensive R Archive Network) database. Extract package titles, descriptions, authors, license info, dependencies, and more from crandb.r-pkg.org — no API key required.

What does it do?

  • Search packages by name or keyword — find all packages matching "ggplot", "tidyverse", etc.
  • Fetch by name — retrieve full metadata for specific known packages
  • List recent releases — monitor the latest packages added to CRAN

Input

FieldTypeDescription
modeselectsearchPackages, getByName, or listRecent
searchQuerystringKeyword to filter packages (for searchPackages mode)
packageNamesarrayExact package names to fetch (for getByName mode)
maxItemsintegerMax results (1–1000, default 50)

Example inputs

Search for ggplot-related packages:

{
"mode": "searchPackages",
"searchQuery": "ggplot",
"maxItems": 20
}

Fetch specific packages:

{
"mode": "getByName",
"packageNames": ["ggplot2", "dplyr", "tidyr", "purrr"],
"maxItems": 10
}

List 30 recent releases:

{
"mode": "listRecent",
"maxItems": 30
}

Output

Each record contains:

FieldDescription
packageNameCRAN package name
titleShort human-readable title
descriptionFull package description
versionLatest version string
authorPackage author(s)
maintainerCurrent maintainer with email
licenseLicense type (e.g. MIT, GPL-2)
urlPackage homepage
bugReportsIssue tracker URL
dependsRequired package dependencies (list)
importsImported packages (list)
suggestsSuggested packages (list)
publishedDatePublication date
cranUrlCRAN package page URL
sourceUrlSame as cranUrl
recordTypeAlways "package"
scrapedAtISO 8601 timestamp

Example output record

{
"packageName": "ggplot2",
"title": "Create Elegant Data Visualisations Using the Grammar of Graphics",
"description": "A system for declaratively creating graphics...",
"version": "3.5.1",
"author": "Hadley Wickham [aut], ...",
"maintainer": "Thomas Lin Pedersen <thomas.pedersen@posit.co>",
"license": "MIT + file LICENSE",
"url": "https://ggplot2.tidyverse.org",
"bugReports": "https://github.com/tidyverse/ggplot2/issues",
"depends": ["R"],
"imports": ["cli", "glue", "gtable", "rlang", "scales"],
"publishedDate": "2024-04-23 08:30:00 UTC",
"cranUrl": "https://cran.r-project.org/package=ggplot2",
"sourceUrl": "https://cran.r-project.org/package=ggplot2",
"recordType": "package",
"scrapedAt": "2025-01-01T00:00:00+00:00"
}

FAQs

Do I need an API key? No. The CRAN database at crandb.r-pkg.org is a public API with no authentication required.

Is there a rate limit? The actor uses concurrent fetching with a built-in concurrency limit to be respectful of the API.

How many packages are on CRAN? CRAN hosts over 20,000 R packages. The searchPackages mode filters these by name/description to find relevant ones.

Why does searchPackages search by name? Client-side filtering of package names is fast and reliable. The /-/desc endpoint is used when available for broader description-based search.

Can I get all packages? Use listRecent with maxItems=1000 to get the most recently published packages.