50 lines
2.2 KiB
Markdown
50 lines
2.2 KiB
Markdown
# GitHub — top 100 Python repositories by stars
|
|
|
|
Artifact: top 100 public GitHub repositories, ranked by star count (language: python).
|
|
|
|
## Provenance
|
|
|
|
- Source: GitHub REST Search API, `GET /search/repositories`
|
|
- Query: `language:python&sort=stars&order=desc&per_page=100` (HTTP 200)
|
|
- Retrieved: 2026-10-23T01:0X:25Z (UTC). Raw payload held in the sibling JSON.
|
|
- Extraction: `extract_github_python_repos.py` (Python stdlib only).
|
|
- Verification: `verify_github_python_repos.py` — re-queries the API and diffs the
|
|
artifact; exit 0 == artifact matches the live response, exit 1 == mismatch.
|
|
|
|
## Files
|
|
|
|
- `github-python-repos-2026-10-23.csv` — machine-readable table: rank, full_name,
|
|
owner, description, language, stars, forks, open_issues, created_at, updated_at,
|
|
homepage, html_url. Descriptions are newline-free and full (no truncation).
|
|
- `github-python-repos-2026-10-23.json` — parsed rows plus snapshot metadata
|
|
(stamp, total_count from the payload).
|
|
- `github-python-repos-2026-10-23.md` — human-readable table with links; the
|
|
description column is truncated to 140 chars **for display only**.
|
|
- `extract_github_python_repos.py` — extractor.
|
|
- `verify_github_python_repos.py` — verifier.
|
|
|
|
## Schema (CSV)
|
|
|
|
| column | type | note |
|
|
|---|---|---|
|
|
| rank | int | 1..100, shutter order |
|
|
| full_name | string | "owner/repo" |
|
|
| owner | string | GitHub login |
|
|
| description | string | newline-free, full text |
|
|
| language | string | "Python" |
|
|
| stars | int | stargazers_count at snapshot time |
|
|
| forks | int | forks_count at snapshot time |
|
|
| open_issues | int | open_issues_count at snapshot time |
|
|
| created_at | string | ISO-8601 datetime |
|
|
| updated_at | string | ISO-8601 datetime |
|
|
| homepage | string | repository homepage URL, empty when none |
|
|
| html_url | string | https://github.com/owner/repo |
|
|
|
|
## Evidence
|
|
|
|
Every number above is a field of the live API JSON payload at the snapshot time.
|
|
Star counts are live counters and can move between consecutive API reads; the
|
|
verifier agrees the artifact when each star count equals the fresh read or differs
|
|
by exactly 1 (printed as a NOTE), and every structural field matches exactly.
|
|
Ranks, URLs and counts were copied verbatim; no value was edited or invented.
|