GitHub Repositories Scraper avatar

GitHub Repositories Scraper

Pricing

Pay per usage

Go to Apify Store
GitHub Repositories Scraper

GitHub Repositories Scraper

Search public GitHub repositories and scrape clean structured data — stars, forks, language, topics, license, open issues, homepage and timestamps — via the official GitHub REST search API. No token needed, no owner personal data.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

ScrapeForge

ScrapeForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

an hour ago

Last modified

Share

GitHub Repository Scraper — Stars, Forks & Repo Data by Search Query

Launch pricing: this actor currently adds no fee — run it on your Apify free-plan credits. Try it, bookmark it, wire it into your stack.

A GitHub repository scraper built on the official REST search API: scrape GitHub repositories by any search query — with full qualifier support (language:, stars:>, topic:) — and get stars, forks, language, topics, license, open issues and timestamps as clean JSON. It works as a GitHub stars scraper for traction tracking and as a keyless GitHub search API scraper for GitHub repo data extraction — no token, no owner personal data.

Official API, zero setup: repo intel in one run, sorted by stars, forks, freshness or relevance.

Who uses this

  • DevRel & dev-tool marketers — track competitor repos' star/fork growth and release activity.
  • OSS researchers & tech scouts — map an ecosystem: who leads a topic, what's rising, what's abandoned (isArchived).
  • Engineering leads — shortlist libraries by license, open-issue load and last-push freshness before adopting.
  • Data & AI teams — structured repo metadata for trend models and training corpora.

Want the discussion layer on top of the code layer? The Hacker News Scraper captures what devs are actually talking about.

How it works

The actor pages through GitHub's official /search/repositories endpoint with your query and sort order, deduplicates by repo id, and maps each hit to a flat record. The repository owner object (login, avatar, profile URL) is intentionally excludedfullName is the stable identifier. Zero-result runs and all-requests-failed runs fail loudly instead of succeeding empty.

Output

One record per repository:

{
"id": 21872392,
"fullName": "josephmisiti/awesome-machine-learning",
"name": "awesome-machine-learning",
"description": "A curated list of awesome Machine Learning frameworks, libraries and software.",
"stars": 73457,
"forks": 15534,
"openIssues": 21,
"language": "Python",
"topics": [],
"license": null,
"isFork": false,
"isArchived": false,
"homepage": null,
"htmlUrl": "https://github.com/josephmisiti/awesome-machine-learning",
"createdAt": "2014-07-15T19:11:19Z",
"updatedAt": "2026-07-15T09:17:52Z",
"pushedAt": "2026-07-14T13:00:59Z",
"scrapedAt": "2026-07-15T09:34:39.938Z"
}
  • pushedAt is the real "is it alive" signal (last code push); updatedAt also moves on stars/metadata.
  • license is the SPDX id (MIT, Apache-2.0, …) or null.

Input

FieldDefaultDescription
querymachine learningGitHub search query; supports qualifiers like language:python stars:>1000
perPage50Results per API page (max 100)
maxItemsTotal cap (GitHub search returns at most 1000 per query); empty = one page
sortbest-matchbest-match, stars, forks or updated

The default run needs no configuration — an empty input searches machine learning.

Reliability & limits

  • Keyless rate limit: unauthenticated GitHub search allows ~60 requests/hour. The actor stops paging gracefully on 403/429 and fails loudly only if nothing at all was fetched.
  • GitHub caps any search at 1000 results — segment big sweeps with qualifiers (stars:1000..5000, created:>2025-01-01).
  • Search index freshness is GitHub's own (minutes behind live).

Paste this output into…

  • Google Sheets=IMPORTDATA("https://api.apify.com/v2/acts/exuberant_volley~github-repos-scraper/runs/last/dataset/items?format=csv&clean=1&token=YOUR_TOKEN") for a live repo-watchlist sheet.
  • Make / n8n — schedule weekly, fetch .../runs/last/dataset/items, and diff stars against last week's snapshot to alert on breakout repos.
  • Adoption shortlist (eng leads) — run your-topic language:typescript stars:>500, then filter isArchived = false and sort by pushedAt — the top rows are the safe bets.

ScrapeForge free data suite

One publisher, ten plug-and-play datasets — all currently free to run:

ActorWhat it delivers
Executive Changes TrackerNew CEO/CFO/board moves from SEC 8-Ks + official newswires — source-cited B2B trigger leadsrun it next →
IKEA Product ScraperNames, prices, ratings and images from any IKEA search or category pagerun it next →
Shopify Store ScraperAny Shopify store's full catalog — variants, SKUs, prices — via products.jsonrun it next →
App Store Apps ScraperApp rankings, ratings, prices and metadata by keyword, any countryrun it next →
Remote Jobs ScraperLive remote listings from RemoteOK + Remotive, keyword-filteredrun it next →
CoinGecko Market ScraperTop-coin prices, market caps and 24h moves — keylessrun it next →
GitHub Repositories ScraperRepo search with stars, forks, topics and licensesrun it next →
Hacker News ScraperTop/New/Best HN stories with scores and comment countsrun it next →
Wikipedia ScraperArticle summaries, images and URLs in any language — RAG-readyrun it next →
SEC EDGAR Filings ScraperAny US public company's filing history by tickerrun it next →

Compliance

  • No personal data — repo catalog data only, GDPR-safe. The owner object (login, avatar, profile URLs) is intentionally excluded.
  • Official API underneath — GitHub REST search; no HTML parsing, no logins.
  • Records live only in your run's dataset; the actor keeps nothing beyond it.