SYSTEM all green source iol.co.za queue 12,844 URLs p99 latency 215ms dataflirt.com · scraper/iol-co.za
RUN · 41 active pipelines · iol.co.za live

IOL news data,
at warehouse scale.

We extract full-text articles, author metadata, publication timestamps, and category tags from Independent Online. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.

Articles extracted
14.2K /day
Metadata updates
38.5K /24h
Author profiles
1.2K /run
Active pipelines
41
Uptime
99.94%
Data Dictionary

Every field we extract from iol.co.za

Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.

Complete list of extractable fields for Article Content objects from iol.co.za. All fields typed and schema-versioned.

article_idurlheadlinesubheadlineauthorpublished_dateupdated_datebody_textcategorytags
article_content
● 200 OK
"article_id": "8f7d9a2b-1c3e-4d5f-8a9b-0c1d2e3f4a5b",
"url": "https://www.iol.co.za/business-report/economy/inflation-target-shift",
"headline": "Reserve Bank maintains repo rate amid inflation concerns",
"author": "Sizwe Dlamini",
"published_date": "2023-11-23T14:30:00Z",
"category": "Business Report > Economy",
"tags": "['SARB', 'Interest Rates', 'Inflation', 'Economy']"
# article_idurlheadlinesubheadlineauthorpublished_date
1
2
3

Complete list of extractable fields for Author Profiles objects from iol.co.za. All fields typed and schema-versioned.

author_idnamerolebiotwitter_handlearticle_countlatest_article_dateprofile_url
author_profiles
● 200 OK
"author_id": "auth_4921",
"name": "Sizwe Dlamini",
"role": "Senior Financial Journalist",
"twitter_handle": "@SizweD_Finance",
"article_count": 342,
"latest_article_date": "2023-11-23T14:30:00Z"
# author_idnamerolebiotwitter_handlearticle_count
1
2
3

Complete list of extractable fields for Category Feeds objects from iol.co.za. All fields typed and schema-versioned.

category_namesectionarticle_urlheadlinesnippetpositionpublished_datescraped_at
category_feeds
● 200 OK
"category_name": "News",
"section": "South Africa",
"article_url": "https://www.iol.co.za/news/south-africa/gauteng/power-grid-update",
"headline": "Eskom announces stage 4 load shedding for the weekend",
"position": 1,
"scraped_at": "2023-11-24T08:15:22Z"
# category_namesectionarticle_urlheadlinesnippetposition
1
2
3

Complete list of extractable fields for Business Report objects from iol.co.za. All fields typed and schema-versioned.

ticker_mentionscompany_namesfinancial_sentimentarticle_urlheadlineauthorpublished_datemarket_category
business_report
● 200 OK
"company_names": "['Naspers', 'Prosus', 'Tencent']",
"ticker_mentions": "['NPN', 'PRX']",
"financial_sentiment": "neutral",
"headline": "Naspers shares hold steady despite Tencent tech curbs",
"market_category": "Companies",
"published_date": "2023-11-24T09:00:00Z"
# ticker_mentionscompany_namesfinancial_sentimentarticle_urlheadlineauthor
1
2
3

Complete list of extractable fields for Multimedia Assets objects from iol.co.za. All fields typed and schema-versioned.

asset_idarticle_urlasset_typesource_urlcaptionalt_textcreditdimensions
multimedia_assets
● 200 OK
"asset_type": "image",
"source_url": "https://image.iol.co.za/image/1/process/1200x800",
"caption": "SARB Governor Lesetja Kganyago announces the latest interest rate decision.",
"credit": "African News Agency (ANA)",
"dimensions": "1200x800",
"article_url": "https://www.iol.co.za/business-report/economy/inflation-target-shift"
# asset_idarticle_urlasset_typesource_urlcaptionalt_text
1
2
3

Capabilities

Complete IOL data extraction architecture

Our IOL scraper handles news sections, dynamic feeds, and varying article templates — with JavaScript rendering, session management, and anti-bot circumvention built in.

Full-Text Article Extraction

Extract complete article bodies, subheadlines, and embedded media across all IOL sections including News, Sport, and Entertainment.

Timestamp Normalisation

Capture published and updated timestamps, normalised to UTC for accurate time-series analysis and media monitoring.

Category & Tag Mapping

Extract hierarchical category data and article tags to classify content and track topic frequency over time.

Business Report Parsing

Targeted extraction for IOL's Business Report section, capturing company mentions, financial data, and market-specific tags.

Author Metadata Tracking

Compile author profiles, track publication volume per journalist, and map internal contributor networks.

Multimedia & Caption Capture

Extract high-resolution image URLs, alt text, captions, and photo credits embedded within the article body.

Paywall Detection

Automatically flag IOL Premium articles and truncate datasets cleanly without breaking pipeline schemas.

Continuous Feed Monitoring

Monitor category index pages at high frequency to capture new publications within minutes of going live.

Historical Archive Scraping

Traverse sitemaps and paginated archives to build comprehensive historical NLP datasets spanning years of publications.

// engagement pipeline

From section URLs to warehouse records

Brief in. Clean data out.

Define Scope
d 0

Provide target sections, author lists, or historical date ranges. We design the extraction schema together.

Pipeline Build
d 2–4

We configure Scrapy crawlers, proxy rotation, and template-specific parsing logic for different IOL sections.

Validation & QA
d 4–6

Schema validation, null-rate checks, and text-encoding verification before full launch.

Delivery
ongoing

JSON / CSV / Parquet pushed to your S3 bucket, BigQuery dataset, or Snowflake stage on agreed cadence.

Under the hood

How our IOL pipeline handles the hard parts

News sites deploy varied templates and rate limits. Here is how we maintain data integrity and pipeline uptime.

pipeline-monitor · iol.co.za · live ● active
// fingerprinting
Identity rotation
TLS fingerprintrandomised
User-agentrotated
IP poolresidential
Challenges blocked0
// pagination
Page coverage
48,291 pages queued running
// observability
Pipeline health
99.9%
uptime
142ms
p99 lat
0.3%
null rate
2
alerts
Template variations
Resilient selectors across subdomains

IOL uses different DOM structures for Business Report, IOL Sport, and standard news. Our selector strategy uses fallback chains tailored to each section, ensuring consistent output regardless of the source template.

High-frequency monitoring
Sitemap and RSS integration

For real-time media monitoring, scraping category pages is inefficient. We monitor IOL's sitemaps and RSS feeds to detect new publications instantly, triggering targeted article extraction without excessive crawling.

Anti-bot layer
Proxy rotation and rate limiting

High-volume extraction triggers rate limits. We use residential and data centre proxies rotated per request, adhering to polite crawl delays while maintaining throughput across distributed nodes.

Text cleaning
Whitespace and encoding normalisation

News articles often contain irregular whitespace, embedded ads, and mixed character encodings. Our pipeline strips boilerplate HTML, removes inline advertisements, and normalises all text to UTF-8.

Monitoring & alerting
24/7 pipeline health with anomaly detection

Every run emits structured logs to our observability stack. We alert on null-rate spikes, missing body text, schema drift, and coverage drops — and respond before you notice.

Applications

Who uses IOL data — and how

Teams across industries use iol.co.za data to build competitive products and smarter operations.

01
Media Monitoring & PR

PR agencies and corporate communications teams track brand mentions, sentiment, and share of voice across South African media.

02
NLP & LLM Training

AI researchers use clean, structured South African news corpora to train regional language models and sentiment classifiers.

03
Financial Sentiment Analysis

Quant funds parse Business Report articles to gauge market sentiment regarding JSE-listed companies and macroeconomic policy.

04
Competitor Intelligence

Media organisations analyse IOL's publication velocity, category focus, and author output to benchmark their own editorial strategies.

05
Political Risk Analysis

Risk consultancies monitor news output to track political developments, policy changes, and social unrest indicators.

06
Archival & Compliance

Institutions maintain searchable archives of historical news coverage for legal, compliance, and academic research purposes.

Why DataFlirt

"IOL publishes thousands of articles weekly across diverse sections. Extracting this at scale requires resilient infrastructure, not basic HTML parsing."

News layouts change constantly. IOL Sport looks different from Business Report. We maintain the selectors, handle the paywall logic, and manage the proxy rotation. DataFlirt absorbs the complexity so your NLP and media monitoring teams can focus on analysis — not the infrastructure.

Technical Spec

IOL scraper — technical capabilities

Everything supported by our iol.co.za scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.

Full-text extraction
Complete article body text stripped of inline ads and boilerplate
Supported
Timestamp normalisation
Published and updated dates converted to standard ISO 8601 UTC
Supported
Author metadata
Extraction of author names, roles, and linked profile URLs
Supported
Category mapping
Hierarchical capture of section, subsection, and article tags
Supported
Multimedia capture
High-resolution image URLs, captions, and credit extraction
Supported
Real-time monitoring
Sub-15-minute latency for new publications via sitemap tracking
Supported
Change detection
Hash-based diff to capture article updates and headline changes
Supported
IOL Premium content
Full text of articles gated behind the IOL Premium paywall
Partial
User comments
Extraction of reader comments and discussion threads
Partial
Infrastructure

Infrastructure powering the IOL pipeline

Open-source tooling on proven cloud infra — no vendor lock-in, full observability.

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheus
Scrapy + Playwright Stack

Scrapy handles crawl orchestration, deduplication, and retry logic. Playwright handles JavaScript rendering for dynamic content feeds. Combined via scrapy-playwright middleware.

Proxy Infrastructure

We maintain pools of proxies rotated per-request to manage rate limits and prevent IP bans during high-volume historical archive extraction.

Cloud-Native Orchestration

Pipelines run on AWS Lambda (burst) and ECS (sustained). Airflow handles scheduling, dependency management, and SLA alerting. All state stored in managed Postgres.

Output & Delivery

Your data, your destination

Data delivered to where your team already works — no new tooling required.

JSON
Newline-delimited or nested — schema versioned per run
CSV
Flat file with typed columns — Excel/Sheets compatible
XLS
Legacy spreadsheet format for direct analyst consumption
Parquet
Columnar format for BigQuery, Snowflake, Athena
AWS S3
Direct bucket delivery — compatible with any data lake
Webhook
HTTP POST per record for real-time downstream processing
API
REST endpoint to query extracted records on demand
BigQuery
Streamed directly into your dataset with schema auto-detect
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About iol.co.za scraping, legality, and pipeline operations.

Ask us directly →
Is scraping IOL legal?

Scraping publicly available news articles is generally permissible for analysis and monitoring, provided it does not violate copyright law via mass republication. DataFlirt targets only public, non-authenticated metadata and text. We do not bypass paywalls or extract personal reader data. Clients should consult legal counsel regarding copyright and fair use for their specific applications.

How do you handle IOL Premium paywalled articles?

We detect paywall flags in the DOM or metadata. For Premium articles, we extract the headline, author, timestamp, and available snippet, but we do not circumvent the authentication system to retrieve the gated body text. The record is flagged as paywalled in your delivery payload.

Can you track changes to headlines or article content?

Yes. We maintain a hash index of previously scraped articles. If an article is updated with a new headline or modified text, we capture the new version and emit a diff record.

How fast can you detect new publications?

For continuous pipelines, we monitor sitemaps and category feeds at high frequency, typically achieving sub-15-minute latency from publication to delivery in your warehouse.

Do you extract images and videos?

We extract the URLs, captions, alt text, and credits for embedded multimedia assets. We do not download the physical media files, but provide the source links for your systems to ingest.

Can I get historical data spanning several years?

Yes. We can traverse IOL's historical archives and sitemaps to build comprehensive back-catalogues for NLP training or historical sentiment analysis.

Can I request a sample dataset before committing?

Absolutely. We provide a sample run of up to 500 articles as part of the pre-engagement scoping process — so you can validate schema fit and text cleanliness before signing any contract.

$ dataflirt scope --new-project --source=iol.co.za ready

Tell us what
to extract.
We do the rest.

20-minute scoping call. Pilot dataset within the week. Production within two. Whether you need a historical archive dump or a continuous news-monitoring feed — we scope, build, and operate the pipeline. Tell us what you need.

hello@dataflirt.com · Bengaluru · IST · typical reply < 4h
Related Scrapers

More in news and media

Services

Data Extraction for Every Industry

View All Services →