Yandex Weather Scraper avatar

Yandex Weather Scraper

Pricing

from $1.99 / 1,000 search results

Go to Apify Store
Yandex Weather Scraper

Yandex Weather Scraper

Scrapes current weather conditions and forecasts from Yandex Weather. Extracts temperature, feels-like, humidity, wind, pressure, UV index, hourly/daily forecast, and more.

Pricing

from $1.99 / 1,000 search results

Rating

0.0

(0)

Developer

Search API

Search API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

Collect public current conditions, hourly forecasts, and detailed 10-day forecasts from Yandex Weather by entering location names. Version 3 uses the current semantic page structure and does not require users to construct result-page URLs.

Supported modes

  • One location with location
  • Up to 20 locations with locations
  • Current conditions only
  • Current conditions plus 1–48 hourly entries
  • Current conditions plus 1–10 daily forecasts
  • English or Russian Yandex Weather pages
  • Direct local browser access, Apify Proxy, or user-provided proxy URLs

Duplicate location names are removed case-insensitively. One dataset record is written per successfully resolved location, in input order. Multiple locations run concurrently up to maxConcurrency.

Input

location and locations are complementary; provide at least one non-empty value across them. Important controls include:

  • language: en or ru
  • includeHourly and hourlyLimit
  • includeDaily and dailyLimit
  • maxConcurrency, maxRequestRetries, and timeout controls
  • blockResources: blocks images, media, and fonts while preserving scripts and styles needed by the page
  • proxyConfiguration: standard Apify proxy editor value

GOOGLE_SERP is intentionally rejected. It supports specified Google HTTP Search/Shopping traffic, not Yandex Weather HTTPS browser navigation. The Actor detects CAPTCHA and access-challenge pages, retires the affected session, fails closed, and never stores challenge content. It does not solve or bypass CAPTCHAs.

Output

Each location record includes a stable ID, requested and resolved location, country, canonical source URL, current temperature and feels-like temperature, condition, description, wind, pressure in mmHg and hPa, humidity, water temperature, sunrise/sunset, daylight duration, ordered hourly entries, and detailed daily forecasts.

Daily forecasts include canonical detail URLs, ISO dates, high/low temperatures, morning/afternoon/evening/night values, humidity, pressure, wind, moon phase, UV index, magnetic-field information, and astronomical labels when Yandex exposes them. Missing optional website values are omitted instead of stored as null, blank, or fabricated placeholders.

Run locally

npm ci --ignore-scripts
npm test
apify run --purge --input-file qa-inputs/local-single.json
node scripts/validate-output.mjs

The matching Docker image and dependency use Playwright 1.61.1. A representative direct local run should finish well within the 3–4 minute target; live timing depends on location count, target response time, and proxy latency.

Deploy and call

apify push --wait-for-finish 600 --json
apify call <actor-id> --input-file qa-inputs/cloud-residential.json --timeout 300 --memory 2048 --build latest --json

Use small bounded validation inputs. Never put tokens, proxy credentials, cookies, or signed URLs in input files or logs.

Limitations

  • Weather values are dynamic and may change between local and cloud runs.
  • Yandex can omit optional fields for some locations or languages; the Actor preserves only observed public values.
  • Location resolution is based on Yandex's public slug routing. Ambiguous place names can resolve to Yandex's preferred location.
  • There is no private weather API dependency. Extraction uses verified semantic DOM structures and will fail without publishing partial data if required structures change.