GitHub BR Tech Jobs Scraper
Pricing
Pay per event
GitHub BR Tech Jobs Scraper
Scrapes Brazilian developer job boards from GitHub Issues (frontendbr/vagas, backend-br/vagas and more). Parses free-text bodies into structured records with location, stack, seniority and employment type.
Pricing
Pay per event
Rating
0.0
(0)
Developer
BowTiedRaccoon
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Scrapes Brazilian developer job boards from GitHub Issues across multiple community-curated repos (frontendbr/vagas, backend-br/vagas, react-brasil/vagas, python-brasil/vagas, and others). Parses free-text issue bodies into structured job records with location, tech stack, seniority, and employment type.
What it collects
Each record contains:
| Field | Description |
|---|---|
issue_number | GitHub issue number |
title | Raw issue title |
state | open or closed |
poster_login | GitHub username of the poster |
poster_avatar_url | Avatar URL |
body_markdown | Full job post body (markdown) |
parsed_role_title | Role title extracted from the title |
parsed_company | Company name if detectable |
parsed_location | Location string (e.g. remoto, sao-paulo) |
parsed_is_remote | true if the role is remote |
parsed_employment_type | clt, pj, freelance, or estagio |
parsed_seniority | junior, pleno, senior, or especialista |
parsed_tech_stack | Comma-separated tech keywords from title + body |
labels | Comma-separated GitHub labels |
comment_count | Number of comments |
reactions_total | Total reactions |
created_at | ISO 8601 creation timestamp |
updated_at | ISO 8601 last update timestamp |
closed_at | ISO 8601 close timestamp (if applicable) |
source_url | GitHub issue URL |
source_repo | Source repository (e.g. frontendbr/vagas) |
Input
| Parameter | Type | Default | Description |
|---|---|---|---|
repos | array | ["frontendbr/vagas","backend-br/vagas","react-brasil/vagas","python-brasil/vagas"] | GitHub owner/repo repos to scrape |
state | string | open | Issue state: open, closed, or all |
githubToken | string | — | Optional GitHub Personal Access Token for 5,000 req/hr rate (vs 60/hr unauthenticated) |
maxItems | integer | — | Maximum total records across all repos (0 = unlimited) |
Getting a GitHub token
No special scopes are needed for public repos. Create a classic token at github.com/settings/tokens with no permissions selected.
Supported repos
Any public GitHub repo that uses GitHub Issues as a job board works. Community repos known to follow this pattern:
frontendbr/vagas— Brazilian front-end jobs (~8k open issues)backend-br/vagas— Brazilian back-end jobsreact-brasil/vagas— React/React Native jobspython-brasil/vagas— Python jobscybersecurity-br/vagas— Cybersecurity jobs
Rate limits
| Mode | Limit |
|---|---|
| Unauthenticated | 60 requests/hr per IP |
| Authenticated (GitHub PAT) | 5,000 requests/hr |
For a default run of a few hundred records, unauthenticated access is sufficient. For full historical scrapes across many repos, provide a GitHub PAT.
Notes
- Pull requests are automatically filtered out (they appear in the GitHub Issues API response).
- The body parser follows community title conventions:
[CLT][Remoto] Role na Company. - Tech stack keywords are matched against a curated list of ~60 common BR dev technologies.