Crates Io Rust Crates Scraper avatar

Crates Io Rust Crates Scraper

Pricing

from $2.99 / 1,000 results

Go to Apify Store
Crates Io Rust Crates Scraper

Crates Io Rust Crates Scraper

Crates.io Rust Crates Scraper is a Python tool designed to extract crate metadata, download counts, version histories, dependencies, license types, and repository URLs from Crates.io. It exports structured Rust ecosystem analytics into clean CSV or JSON format

Pricing

from $2.99 / 1,000 results

Rating

0.0

(0)

Developer

real-estate-api

real-estate-api

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Categories

Security

Limited permissions

Share

crates.io Rust Crates Scraper — Crate Search, Download Statistics, and Dependencies

Overview

crates.io Rust Crates Scraper collects publicly available information about Rust crates, including search results, download statistics, version details, crate owners, and reverse dependencies.

The actor organizes collected information into a structured dataset that can be exported as JSON, CSV, or Excel for analysis, package research, and dependency management.

Features

  • Crate Search: Find crates using keywords and configurable sorting options.
  • Crate Details: Collect crate metadata, version information, and download statistics.
  • Owner Information: Retrieve crate ownership details and maintainer names.
  • Reverse Dependencies: Explore crates that depend on a specified crate.
  • Pagination: Collect additional search results and dependency records within the configured item limit.
  • Duplicate Filtering: Remove duplicate crate, owner, and dependency records while preserving records collected through different modes.
  • Structured Exports: Organize results for spreadsheet analysis and data processing.

Use Cases

  • Crate Discovery: Find Rust packages matching keywords such as json.
  • Package Research: Review crate versions, download counts, and descriptions.
  • Maintainer Research: Examine ownership information for selected crates.
  • Dependency Analysis: Review reverse dependencies before planning potentially breaking changes.
  • Registry Monitoring: Compare collected snapshots to identify changes in versions and download statistics.
  • Dataset Analysis: Export crate information for reporting and further processing.

Input Parameters

ParameterTypeDefaultDescription
searchQueriesArray["json"]Keywords used to find crates.
crateNamesArray[]Exact crate names for collecting detailed information, owners, and reverse dependencies.
sortStringrelevanceSearch ordering: relevance, downloads, recent-downloads, recent-updates, or new.
maxItemsInteger100Maximum number of successful records to collect. Minimum: 1; maximum: 1000.

Example Input

{
"searchQueries": ["json"],
"crateNames": ["serde"],
"sort": "relevance",
"maxItems": 100
}

What Data Does This Actor Extract?

The actor produces records for crate search results, detailed crate information, owners, and reverse dependencies. Available fields vary depending on the collection mode and the information provided by the registry.

Extracted Data Fields

FieldTypeDescription
idStringIdentifier for a crate, owner, or dependency record.
nameStringCrate name or the crate associated with an owner or dependency record.
downloadsIntegerTotal download count when available.
recent_downloadsIntegerRecent download count when available.
default_versionStringDefault crate version.
newest_versionStringNewest available version.
max_versionStringMaximum version reported for the crate.
max_stable_versionStringLatest stable version when available.
num_versionsIntegerNumber of versions reported for the crate.
crate_summaryStringShort description of the crate.
keywordsArrayKeywords associated with the crate.
categoriesArrayCategories assigned to the crate.
created_atStringCrate creation timestamp.
updated_atStringLast update timestamp.
yankedBooleanIndicates whether the reported version is yanked.
loginStringOwner login name.
owner_nameStringOwner display name when available.
reqStringVersion requirement for a reverse dependency.
kindStringOwner or dependency classification when available.
modeStringCollection mode: search, detail, owners, or reverse_dependencies.
scraped_atStringTimestamp when the record was collected.

Example Output

The following is an illustrative crate search record. Available values depend on the crate and the collected data.

{
"id": "json",
"name": "json",
"created_at": "2016-06-12T10:45:12.398700Z",
"updated_at": "2020-03-18T08:39:23.818803Z",
"downloads": 25979912,
"recent_downloads": 2240990,
"default_version": "0.12.4",
"num_versions": 54,
"yanked": false,
"max_version": "0.12.4",
"newest_version": "0.12.4",
"max_stable_version": "0.12.4",
"crate_summary": "JSON implementation in Rust",
"exact_match": true,
"mode": "search",
"scraped_at": "2026-10-12T00:00:00+00:00"
}

Collection Modes

  • search — Collects crates matching the configured search queries.
  • detail — Collects detailed information about specified crates.
  • owners — Collects ownership information for specified crates.
  • reverse_dependencies — Collects information about crates that depend on specified crates.

Working with Your Dataset

After the actor finishes, open its dataset to review the collected records and export them in the supported formats:

  • JSON: For structured data processing.
  • CSV: For spreadsheet analysis and reporting.
  • Excel: For reviewing and comparing crate information.

You can use exported datasets to compare crate statistics across separate runs, review version changes, and analyze dependency relationships.

Important Notes

  • Search queries and exact crate names can be combined in one run.
  • The maxItems setting applies to successful records and has a maximum value of 1000.
  • Duplicate crate, owner, and dependency identifiers are filtered according to the actor's deduplication logic.
  • Search and detail records for the same crate may both be retained because they represent different collection modes.
  • The available fields depend on the crate and the information returned during collection.

FAQ

Can I search for multiple crates?

Yes. Provide multiple search queries in searchQueries and exact crate names in crateNames.

Can I collect owner information?

Yes. Supply crate names to collect available ownership information.

Can I investigate reverse dependencies?

Yes. Provide the names of the crates you want to investigate.

Can I export the results to a spreadsheet?

Yes. The collected dataset can be exported as CSV or Excel, as well as JSON.

Can I collect both search results and detailed crate information in one run?

Yes. Configure both searchQueries and crateNames in the same input.

Disclaimer

This actor is an independent tool and is not affiliated with, endorsed by, sponsored by, or officially associated with crates.io or its maintainers. Users are responsible for ensuring that their collection and use of data comply with applicable laws and relevant terms.

Collecting information that is already public is generally legal. Scraping is not the same thing as hacking, and there is no single law that bans it. The limits are the usual ones: do not break into accounts, do not take private or confidential data, and be careful with personal data and copyrighted works. A site's terms can also restrict how you access it. Facts such as a public name, price, or rating are not the same thing as republishing someone's article or photo.

This actor collects information from public pages. It does not log in and it does not bypass access controls.

For a longer explanation, see Apify's article Is web scraping legal?.