SYSTEM all green source hs.fi queue 8,192 URLs p99 latency 318ms dataflirt.com · scraper/hs-fi
RUN · 14 active pipelines · hs.fi live

Helsingin Sanomat data,
at warehouse scale.

We extract article text, author metadata, publication timestamps, category classifications, and comment threads from hs.fi. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.

Articles extracted
3.2K /day
Comments parsed
41.5K /24h
Author updates
812 /run
Active pipelines
14
Uptime
99.98%
Data Dictionary

Every field we extract from hs.fi

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

Complete list of extractable fields for Article Metadata objects from hs.fi. All fields typed and schema-versioned.

article_idurlheadlinesubheadlineauthorspublished_atupdated_atcategorysubcategorytagspaywall_statusword_count
article_metadata
● 200 OK
"article_id": "hs-123456789",
"headline": "Hallitus suunnittelee uusia leikkauksia",
"authors": "['Matti Meikalainen']",
"published_at": "2023-10-24T08:15:00Z",
"category": "Politiikka",
"paywall_status": true,
"word_count": 842
# article_idurlheadlinesubheadlineauthorspublished_at
1
2
3

Complete list of extractable fields for Article Content objects from hs.fi. All fields typed and schema-versioned.

article_idurlparagraphsquotesimage_urlsimage_captionsembedded_linksrelated_articlesread_time_minuteslanguage
article_content
● 200 OK
"article_id": "hs-123456789",
"paragraphs": "['Paaministeri ilmoitti tanaan...', 'Oppositio kritisoi paatosta...']",
"image_urls": "['https://hs.fi/img/1.jpg']",
"quotes": "['Tama on valttamatonta']",
"read_time_minutes": 4,
"language": "fi"
# article_idurlparagraphsquotesimage_urlsimage_captions
1
2
3

Complete list of extractable fields for Author Profiles objects from hs.fi. All fields typed and schema-versioned.

author_idnameprofile_urlrolebiotwitter_handleemailarticle_countrecent_articlesfirst_published_date
author_profiles
● 200 OK
"author_id": "auth-554",
"name": "Matti Meikalainen",
"role": "Politiikan toimittaja",
"email": "matti.m@hs.fi",
"article_count": 342,
"recent_articles": "['hs-123456789', 'hs-987654321']"
# author_idnameprofile_urlrolebiotwitter_handle
1
2
3

Complete list of extractable fields for Comments & Engagement objects from hs.fi. All fields typed and schema-versioned.

comment_idarticle_iduser_nametimestampcomment_textupvotesdownvotesreplies_countis_moderatedparent_comment_id
comments_& engagement
● 200 OK
"comment_id": "c-998877",
"article_id": "hs-123456789",
"user_name": "Kansalainen88",
"timestamp": "2023-10-24T09:30:00Z",
"comment_text": "Taysin vaara suunta.",
"upvotes": 45,
"replies_count": 3
# comment_idarticle_iduser_nametimestampcomment_textupvotes
1
2
3

Complete list of extractable fields for Frontpage & Sections objects from hs.fi. All fields typed and schema-versioned.

section_namesnapshot_timestamptop_article_idtop_article_headlinetrending_articleseditor_pickstotal_articles_visiblead_placements
frontpage_& sections
● 200 OK
"section_name": "Etusivu",
"snapshot_timestamp": "2023-10-24T12:00:00Z",
"top_article_id": "hs-123456789",
"top_article_headline": "Hallitus suunnittelee uusia leikkauksia",
"trending_articles": "['hs-111', 'hs-222']",
"editor_picks": "['hs-333']"
# section_namesnapshot_timestamptop_article_idtop_article_headlinetrending_articleseditor_picks
1
2
3

Capabilities

Everything you need from hs.fi. Nothing else.

Our hs.fi scraper handles every layer of the platform: article text, dynamic comments, author metadata, and category structures. We manage JavaScript rendering, session handling, and UTF-8 normalisation.

Full Article Extraction

Extract headlines, subheadlines, body paragraphs, and inline media across all hs.fi sections including Kotimaa, Ulkomaat, and Talous.

Publication Timestamps

Capture exact published and updated timestamps to track news velocity and editorial modifications over time.

Author & Byline Data

Map articles to specific journalists, tracking author output, specialization, and historical publication records.

Comment Thread Parsing

Extract user comments, timestamps, upvote metrics, and nested replies to analyze public sentiment on specific topics.

Paywall Flagging

Identify Tilaajille restricted content versus open-access articles to map subscription strategies and premium content ratios.

Tag & Taxonomy Mapping

Extract internal metadata tags and category hierarchies to understand content clustering and editorial focus.

Cross-Reference Extraction

Capture Lue lisaa related article links to map internal linking structures and topic continuity.

Media & Caption Capture

Extract high-resolution image URLs, alt text, and editorial captions embedded within article bodies.

Real-Time Frontpage Tracking

Monitor the hs.fi etusivu frontpage at minute-level intervals to track headline positioning and editorial prioritization.

// engagement pipeline

From URL list to warehouse record

Brief in. Clean data out.

Define Scope
d 0

Specify target categories, historical date ranges, or specific authors. We design the extraction schema together.

Pipeline Build
d 2–4

We configure Scrapy / Playwright crawlers, handle dynamic pagination, and manage request routing for hs.fi.

Validation & QA
d 4–6

Schema validation, null-rate checks, and UTF-8 encoding verification for Finnish characters 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 hs.fi pipeline handles the hard parts

News sites deploy strict rate limits and dynamic rendering. Here is how we stay resilient.

pipeline-monitor · hs.fi · 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
Dynamic content loading
Playwright execution for lazy-loaded elements

Hs.fi heavily relies on JavaScript for lazy-loading article bodies, comments, and related links. We run full Playwright browser sessions to hydrate the DOM completely before extraction.

Encoding strictness
Native UTF-8 handling for Finnish morphology

Finnish language text requires strict encoding management. Our pipeline normalises all text outputs to standard UTF-8, ensuring characters are perfectly preserved for NLP downstream.

Pagination complexity
Recursive comment thread traversal

Comment sections on popular articles paginate dynamically via API calls. We intercept these XHR requests to reconstruct the entire comment tree, including deeply nested replies.

Rate limiting
Distributed request pacing

Media sites deploy strict WAF rules to block scraping. We distribute requests across residential IP pools and pace crawls to mimic human reading patterns, avoiding IP bans.

Schema drift
Resilient selectors for editorial layouts

News sites frequently alter layouts for special features or breaking news. We use multi-layer fallback selectors targeting semantic HTML and JSON-LD metadata to ensure pipeline stability.

Applications

Who uses hs.fi data

Teams across industries use hs.fi data to build competitive products and smarter operations.

01
Media Monitoring & PR

Track brand mentions, executive quotes, and sentiment across Finland's largest news publication in real time.

02
NLP & Language Modeling

Harvest high-quality, editorially reviewed Finnish text to train large language models and translation engines.

03
Sentiment Analysis

Analyze comment sections on political and economic news to gauge public opinion and voter sentiment.

04
Competitor Intelligence

Other media organizations track hs.fi publication velocity, paywall ratios, and category focus to benchmark editorial strategy.

05
Academic Research

Sociologists and political scientists analyze historical news coverage and framing of specific societal issues.

06
Financial Signal Extraction

Quant funds extract macroeconomic news and corporate reporting from the Talous section to inform algorithmic trading models.

Why DataFlirt

"Helsingin Sanomat represents the definitive record of Finnish news and public discourse, but extracting it at scale requires navigating dynamic payloads and strict anti-bot measures."

Building a reliable pipeline for hs.fi involves more than simple HTTP requests. It requires managing JavaScript hydration for comments, handling complex pagination, preserving strict UTF-8 encoding for Finnish text, and circumventing rate limits. DataFlirt manages this infrastructure entirely, delivering structured news data directly to your warehouse so your team can focus on NLP and analysis.

Technical Spec

hs.fi scraper technical capabilities

Everything supported by our hs.fi scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.

JavaScript rendering
Full Playwright sessions for lazy-loaded text and comments
Supported
Finnish character encoding
Strict UTF-8 normalisation for all text fields
Supported
Comment thread extraction
Recursive parsing of nested user comments
Supported
Author metadata
Extraction of bylines, roles, and historical article counts
Supported
Frontpage positioning
Time-series tracking of top stories and section placement
Supported
JSON-LD extraction
Parsing of embedded schema.org metadata for structured dates
Supported
Historical archives
Deep crawling of past articles via sitemap traversal
Supported
Paywalled article body text
Full text of Tilaajille articles requiring active subscription credentials
Partial
User account data
Extraction of private user reading history or saved articles
Partial
Infrastructure

Infrastructure powering the hs.fi pipeline

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

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheusFastAPI
Scrapy + Playwright Stack

Scrapy handles crawl orchestration and deduplication. Playwright handles JavaScript rendering and dynamic content loading. Combined via scrapy-playwright middleware.

Residential Proxy Infrastructure

We maintain pools of residential ISP proxies across EU regions. Rotation happens per-request with sticky sessions where required to bypass WAF protections.

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 and Sheets compatible.
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
RESTful endpoints for on-demand data retrieval
XLS
Legacy spreadsheet format for non-technical teams
BigQuery
Streamed directly into your dataset with schema auto-detect
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About hs.fi scraping, legality, and pipeline operations.

Ask us directly →
Is scraping hs.fi legal?

Scraping publicly available information from hs.fi is generally permissible under EU law, provided it targets public data. DataFlirt does not bypass paywalls to extract subscriber-only content or extract personal user data. Clients should review Sanoma's ToS and consult legal counsel for specific use cases.

Can you bypass the Tilaajille paywall?

No. We extract the metadata, headlines, and public lead paragraphs of paywalled articles, but we do not use compromised credentials to scrape premium body text. We flag paywalled content using a boolean field.

How do you handle Finnish language encoding?

Our pipelines enforce strict UTF-8 encoding at every stage, from HTTP response parsing to database storage and final file delivery. This ensures characters are preserved perfectly.

Can you scrape historical articles from hs.fi?

Yes. We can traverse historical sitemaps and category archives to extract articles dating back years, depending on the availability of the public URLs.

How frequently can you update frontpage data?

For editorial tracking, we can configure pipelines to snapshot the hs.fi frontpage at 5-minute intervals, capturing headline changes and article positioning in real time.

Do you extract user comments?

Yes. We capture the full comment thread on public articles, including nested replies, timestamps, and upvote/downvote metrics, handling the dynamic pagination required to load them.

$ dataflirt scope --new-project --source=hs.fi 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 across all sections. 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 →