Globo Esporte Scraper - Sports News, Videos & Matches avatar

Globo Esporte Scraper - Sports News, Videos & Matches

Pricing

from $1.50 / 1,000 ge sports records

Go to Apify Store
Globo Esporte Scraper - Sports News, Videos & Matches

Globo Esporte Scraper - Sports News, Videos & Matches

Scrape public sports content from ge.globo.com, including news, videos, matches and feed records. Extract clean, structured data for sports coverage, content monitoring, match tracking and analysis.

Pricing

from $1.50 / 1,000 ge sports records

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

13 days ago

Last modified

Categories

Features

Limited permissions

Share

Globo GE Sports Scraper

Globo GE Sports Scraper collects public sports content from GE (ge.globo.com), including news, videos, matches, standings, and top scorers. Search by keyword, or paste content links -- full URLs and bare section paths both work. Results share one dataset with a record type so you can separate news from match and table records.

Why This Scraper?

  • Search by keyword. Search public GE content by one or more keywords.
  • Sections and teams. Collect the homepage, sport sections, competitions and team pages.
  • Direct links. Read article, match, video, and public search URLs.
  • Rich records. Source IDs, titles, summaries, sections, dates, images, and match metadata are kept.
  • One dataset. Articles, videos, matches, standings, and top scorers share a stable recordType.
  • Recurring runs. Track NEW, UPDATED, UNCHANGED, REAPPEARED, and EXPIRED records.

Use Cases

  • Sports news monitoring: media and social teams search by team, player, or competition and get only new or updated articles and videos on a schedule with incremental mode.
  • Scoreboards and fan apps: pull match results and league standings tables from a competition's GE section to power a scoreboard, bot, or fan site.
  • Content research and archiving: collect full article text and video metadata about a team or topic to build a searchable archive or editorial brief.
  • Editorial and link audits: read one specific article, match, or video page directly by URL to check its byline, publish date, and full text.
  • Historical results tracking: collect standings and match records across a season to build a dataset of positions, points, and results over time.

Data You Get

Sample shape: values are illustrative placeholders, not from a live record.

FieldExample
id"sample0match0001"
recordType"match"
title"Sample Home x Sample Away"
summary"Match card from the public GE feed"
section"sample-championship"
url"https://ge.globo.com/futebol/..."
imageUrl"https://.../image.jpg"
thumbnailUrl"https://.../thumb.jpg"
publishedAt"2026-01-01T18:00:00Z"
modifiedAt"2026-01-01T18:05:00Z"
fullText"Public article text..."
author"Sample Author"
championship"Sample Championship"
matchDate"2026-01-01T16:00:00"
homeTeam"Sample Home"
awayTeam"Sample Away"
homeScore2
awayScore0
team"Sample Team"
position1
points30
changeType"NEW"
changedFields[]
firstSeenAt"2026-09-18T08:00:00+00:00"
lastSeenAt"2026-09-18T08:00:00+00:00"

Match records from a championship section also carry team ids, acronyms, penalties, status, broadcast label, and venue; match records read from a direct match URL carry venue, venue region and locality, round, and a canonical URL. Standing records also carry team id, acronym, played, wins, draws, losses, goals for and against, goal difference, win percentage, recent form, promotion or relegation zone, and crest URL. Championship sections also return the page's top-scorers ranking as scorer records (rank, player, position on the pitch, team, goals, photo URL), so a championship section page can return up to about 50 more records, each saved and billed like any other record; Maximum records caps them. Search results also carry a source label (the publishing site for articles, the channel or programme for videos). Article cards enriched with details also carry the full section list and text length; articles read directly by URL add author location and a canonical URL.

How to Use

Search mode

Search by keyword:

{
"mode": "search",
"queries": ["flamengo", "Libertadores"],
"maxItems": 20,
"maxPages": 2
}

Read links or sections:

{
"mode": "urls",
"urls": ["/", "/futebol/", "https://ge.globo.com/futebol/libertadores/"],
"fetchDetails": true,
"maxItems": 10
}

Supported link shapes (each is verified against the live site):

ShapeExample
Homepagehttps://ge.globo.com/
Sport sectionhttps://ge.globo.com/futebol/
Competition pagehttps://ge.globo.com/futebol/brasileirao-serie-a/
Other-sport sectionhttps://ge.globo.com/basquete/nba/
Team pagehttps://ge.globo.com/futebol/times/flamengo/
Regional team pagehttps://ge.globo.com/ba/futebol/times/bahia/
Section feed page (starts at that page, never tombstones EXPIRED)https://ge.globo.com/futebol/brasileirao-serie-a/index/feed/pagina-2.ghtml
Team feed pagehttps://ge.globo.com/futebol/times/flamengo/index/feed/pagina-2.ghtml
Articlehttps://ge.globo.com/futebol/brasileirao-serie-a/noticia/2026/10/29/vasco-x-flamengo-onde-assistir-ao-vivo-horario-e-escalacoes.ghtml
Match pagehttps://ge.globo.com/ba/futebol/brasileirao-serie-a/jogo/28-10-2026/bahia-sao-paulo.ghtml
Video pagehttps://ge.globo.com/video/hulk-discute-com-torcedor-do-fluminense-15140106.ghtml
Videos hub (reads the latest videos)https://ge.globo.com/videos/
Section videos hub (plural, that section's videos)https://ge.globo.com/cartola/videos/
Competition videos listing (that competition's videos)https://ge.globo.com/futebol/brasileirao-serie-a/videos/
Section video hub (singular, that section's videos)https://ge.globo.com/combate/video/
State or regional section pagehttps://ge.globo.com/rj/futebol/
Search page (uses its q value)https://ge.globo.com/busca/?q=flamengo
Legacy http:// link (an alias, read as https://; not in the default list)http://ge.globo.com/futebol/
Former site host (an alias, read as ge.globo.com; not in the default list)https://globoesporte.globo.com/futebol/

Links from any other site are skipped with a warning in the run log, and a link that is read but returns no record logs a warning that names it. A search term with no match also logs a warning.

Default input: URL mode with the urls field left untouched now reads one example of each distinct shape above (the two alias rows are accepted but not pre-filled, since they resolve to a section already listed), instead of nothing. Set maxItems to bound the run.

A bare section path and a full section URL are the same page -- use whichever is handier. (The old mode: "sections" and the sections field keep working for saved tasks; both fold into this mode.)

Scope notes. GE search returns newest-first results only, so there is no sort or content-type input. Pick a sport with sportsCategory, or paste section links. Matches, standings (team ids, acronyms, played, wins, draws, losses, goals for and against, goal difference, win percentage, form, zone, crest URL) and article pages come from the same link mode. Topics outside ge.globo.com (general news, Cartola, recipes, podcasts, rural, auto, celebrities) are out of scope.

Output views

The dataset has these views in the Console: Globo GE records (all), Articles, Videos, Matches, Standings, Article detail (full text and author) and Changes (incremental classification and changed fields).

Run it from your code

Python:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("abotapi/globo-ge").call(run_input={"mode": "search", "queries": ["flamengo"], "maxItems": 20})
for record in client.dataset(run["defaultDatasetId"]).iterate_items():
print(record["recordType"], record["title"])

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('abotapi/globo-ge').call({ mode: 'search', queries: ['flamengo'], maxItems: 20 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Or connect it to Make, Zapier, n8n, Google Sheets or webhooks from the Integrations tab.

Recurring monitoring

Only new or changed content:

{
"mode": "search",
"queries": ["Libertadores"],
"incrementalMode": true,
"stateKey": "libertadores-news",
"emitUnchanged": false,
"emitExpired": false,
"maxItems": 50
}

Input Parameters

ParameterTypeDefaultDescription
modestringsearchSelect search or urls.
sportsCategorystringallURL mode only: adds the section feed for one sport (futebol, basquete, tenis, volei, atletismo). With untouched links it replaces the example set.
queriesstring[]["flamengo"]Keywords used in search mode.
urlsstring[]one example per supported shape (table above)Public GE links used in URL mode: full URLs or bare section paths. The legacy sections field still works and folds in.
fetchDetailsbooleanfalseAdd author and full text to article cards. Successfully enriched saved cards add a surcharge. Direct article URLs include available details without an extra charge.
maxItemsinteger20Maximum rows to save. 0 means no limit, bounded by a hard ceiling of 100000 rows per run.
maxPagesinteger0Maximum pages per source. 0 walks until the source ends or the item cap is reached, bounded by a hard ceiling of 1000 pages per source.
resumeFromRunIdstringemptyPrevious run or dataset ID whose saved IDs should be skipped.
incrementalModebooleanfalseEnable cross-run change classification.
stateKeystringemptyOptional name for the incremental campaign.
ignoreFieldsForChangesarray[]Incremental mode only. Extra field names, or dotted paths for nested fields, to leave out of UPDATED change detection. modifiedAt and scrapedAt are always left out.
emitUnchangedbooleanfalseReturn and bill extra unchanged rows in incremental mode. With fetchDetails on, the detail-enrichment surcharge also applies to those returned rows.
emitExpiredbooleanfalseReturn and bill extra missing-record rows after a complete nonempty scan.
mcpConnectorsstring[][]Optional connector IDs for exporting the first results.
notionParentPageUrlstringemptyOptional parent page for a connector export.
maxNotifyListingsinteger50Maximum records offered to connector exports.
proxyConfigurationobjectApify ProxyOptional Apify Proxy configuration.

Resume and recurring updates

resumeFromRunId skips records already saved in one previous run or dataset. incrementalMode stores a baseline for the same search and labels later observations. Change detection compares every output field except modifiedAt, scrapedAt and anything you list in ignoreFieldsForChanges; those fields stay in the output but never turn a record into UPDATED, and changedFields names what differed. Widening the ignore list never causes a one-time wave of UPDATED rows, because the stored snapshot is compared under the current list. Use one of these modes at a time. Unchanged records are suppressed unless enabled. Missing records are marked EXPIRED only after a complete, nonempty scan with no item or page truncation. A smaller output cap saves only that many new records; later runs can collect the remaining unseen records.

With several search terms or links, maxItems is shared out evenly between them, so a term with few results does not pass its unused share to the others. EXPIRED rows count toward maxItems: if new and updated rows use up the cap, the remaining EXPIRED rows are not returned in that run or later ones, so leave maxItems at 0 when you rely on them. If any source read fails during an incremental run, the saved baseline is kept as it was, so records returned by that run are labelled NEW again on the next run.

Send results into your apps (MCP connectors)

Connector export is optional. Add connector IDs when an approved connector is configured for the run. Use notionParentPageUrl when the selected connector needs a parent page, and maxNotifyListings to limit exported records. Connector failures leave the dataset available.

Output Example

Sample shape: values are illustrative placeholders, not from a live record.

{
"id": "sample0match0001",
"recordType": "match",
"title": "Sample Home Team x Sample Away Team",
"url": "https://example.com/futebol/sample-championship/jogo/sample-home-team-sample-away-team.ghtml",
"summary": "Match card from the public GE sports feed.",
"section": "sample-championship",
"championship": "Sample Championship",
"matchDate": "2026-01-01T16:00:00",
"homeTeam": "Sample Home Team",
"awayTeam": "Sample Away Team",
"homeScore": 2,
"awayScore": 0,
"publishedAt": "2026-01-01T18:00:00Z",
"modifiedAt": "2026-01-01T18:05:00Z",
"changeType": "NEW",
"changedFields": [],
"firstSeenAt": "2026-09-18T08:00:00+00:00",
"lastSeenAt": "2026-09-18T08:00:00+00:00"
}

Plan Requirement

An Apify account is required. The actor starts on the Apify Proxy datacenter/automatic pool, because GE showed no challenge on plain connections. Whether a datacenter exit alone is always accepted has not been guaranteed for every account, so the actor watches what your plan allows instead of assuming it.

  • If the default connection is refused, the run logs "The selected connection is unavailable to this run. Apify free plans do not include residential proxies. Continuing on a backup connection; some pages may still be unavailable." and keeps going on a backup connection. When that backup serves a page, the log says "Served over the backup connection (the default connection was unavailable)."
  • If nothing could be read after that, the run fails with "No results: residential proxies are unavailable on this run (Apify free plans do not include them), and the backup connection could not load the requested Globo GE pages." Upgrade your Apify plan or supply your own proxy URLs, then run again.
  • If the proxy refuses your account outright, the run fails with "The proxy connection was refused for this account, so no page could be read. Your Apify plan does not include proxy access; a paid plan is required."
  • If the requests simply failed, the message is "Could not load any results page ... This is a connection problem, not an empty search."

Custom proxy URLs are used as given, with no escalation.

FAQ

How much does it cost?

You pay per record saved, plus a one-time actor-start charge, plus a small surcharge for each article card successfully enriched with fetchDetails (the detail-enrichment event, one unit per enriched card), charged one card at a time right after that card is saved (never for skipped or failed cards, or for unchanged cards that incremental mode suppresses; with emitUnchanged on, returned unchanged cards that were enriched are charged too). The Pricing tab shows the current rates. Use Maximum records to cap the cost of any run.

This actor collects only publicly available sports content. You are responsible for how you use it: follow GE's terms and the laws that apply to you, and get legal advice if you plan commercial redistribution. Scores, results and standings are generally facts, but article text, photos and videos may be subject to third-party rights.

Can I get only new or updated content on a schedule?

Yes. Schedule the actor from the Schedules tab and turn on Incremental changes for scheduled runs. Each run then labels records NEW, UPDATED, UNCHANGED, REAPPEARED, or EXPIRED, and unchanged ones are not billed unless you turn on emitUnchanged.

Can I use Resume and Incremental mode together?

No, and the run fails fast with a clear message if you try. They solve different problems: resumeFromRunId continues one interrupted run so you do not re-pay for records it already saved, while incremental mode tracks the same search or link scope across many separate scheduled runs. Use one or the other for a given campaign.

Why did my run fail instead of returning an empty dataset?

If every source read was refused or errored, the run stops with a clear message so "nothing found" is never confused with "nothing could be read". Run it again in a few minutes. If some sources answered and genuinely carried nothing while others failed, you still get a quiet success naming how many reads failed.

Can I use it with AI agents or MCP?

Yes. Call it from any Apify integration or MCP client, and use the connector field to push results into Notion, Linear or Airtable.

🔗 Want more sports data?

Pair this actor with these related scrapers from the same team:

⚽ OneFootball Scraper
Scrape public OneFootball data including football news, upcoming fixtures, match results...
⚽ FotMob Scraper ⚽ Match Details, Stats, Lineups & Players
Pull structured football data from FotMob: match details with scores, team stats, events...
⚽ SofaScore Scraper ⚽ Live Scores, Stats, Players & Odds
Pull structured sports data from SofaScore across football, basketball, tennis, and 20+...
⚽ Sportsbook Odds Scraper (1xBet, Melbet, Linebet, Paripulse)
Collect live and prematch betting odds from 1xBet, Melbet, Linebet and Paripulse. Give it...
⚽ JioHotstar Scraper
Scrape the JioHotstar catalog by content type or URL. Extract shows, movies, episodes...
⚽ Strava Data Scraper
Scrape public Strava data: clubs (members, location, sport, settings), athlete profiles...

👉 Browse all abotapi scrapers

💬 Support

  • 🐞 Found a bug or a missing field? Open a ticket on the Issues tab. We usually reply within hours.
  • 🛠️ Need another site, extra fields or a private build? Email contact@abotapi.com.
  • ⭐ Enjoying it? A quick review on the actor page helps other users find it.
⌂ 换网址