github-trending-scraper
Scrape GitHub Trending repositories and save to JSON files. Use when the user wants to fetch GitHub trending projects, get popular repositories, scrape trending lists, or requests "get GitHub trending", "scrape GitHub popular projects", or "fetch trending repos" for daily, weekly, or monthly periods.
GitHub Trending Scraper
Scrape GitHub Trending repositories across different time periods (daily, weekly, monthly) and save structured data to JSON files.
Usage
Run the scraper script to fetch trending repositories:
python scripts/github_trending_scraper.py
The script will:
- Scrape trending repositories for all three periods (daily, weekly, monthly)
- Extract project metadata: name, URL, description, language, stars, forks
- Save results to
github_trending.jsonin the current directory - Display statistics about scraped projects
Output Format
The generated JSON file contains:
{
"update_time": "2026-02-09 10:30:00",
"data": {
"daily": [...],
"weekly": [...],
"monthly": [...]
}
}
Each project includes:
name: Repository full name (owner/repo)url: GitHub repository URLdescription: Project descriptionlanguage: Primary programming languagestars: Total star countforks: Total fork countstars_daily/weekly/monthly: New stars in the period
Dependencies
Install required packages:
pip install requests beautifulsoup4
Or use the provided requirements file:
pip install -r requirements.txt
Customization
To scrape only specific periods, modify the periods list in the main() function of the script.
To change the output filename, modify the output_file variable in the script.