Pricing
from $3.00 / 1,000 results
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
5.0
(11)
Developer
Actor stats
11
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
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
| Field | Type | Description |
|---|---|---|
mode | select | searchPackages, getByName, or listRecent |
searchQuery | string | Keyword to filter packages (for searchPackages mode) |
packageNames | array | Exact package names to fetch (for getByName mode) |
maxItems | integer | Max 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:
| Field | Description |
|---|---|
packageName | CRAN package name |
title | Short human-readable title |
description | Full package description |
version | Latest version string |
author | Package author(s) |
maintainer | Current maintainer with email |
license | License type (e.g. MIT, GPL-2) |
url | Package homepage |
bugReports | Issue tracker URL |
depends | Required package dependencies (list) |
imports | Imported packages (list) |
suggests | Suggested packages (list) |
publishedDate | Publication date |
cranUrl | CRAN package page URL |
sourceUrl | Same as cranUrl |
recordType | Always "package" |
scrapedAt | ISO 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.
