# MET Norway Weather Forecast Scraper (`parseforge/metno-forecast-scraper`) Actor

Scrapes weather forecast data from MET Norway for a given latitude and longitude. Returns each forecast interval as a flat row with temperature, wind, humidity, pressure, cloud cover, and precipitation.

- **URL**: https://apify.com/parseforge/metno-forecast-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Developer tools, Travel, Automation
- **Stats:** 1 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.52 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner.jpg)](https://apify.com/parseforge?fpr=vmoqkp)

### MET Norway Weather Forecast Scraper

**Scrape weather forecasts from MET Norway for any latitude and longitude, up to a million per run.** Each forecast returns temperature, wind, humidity, pressure, cloud cover, and precipitation details. No API key required. Export to CSV, JSON, Excel, or XML.

A weather forecast search usually means signing up for a commercial API, managing keys, and paying per call. This Actor reads the public MET Norway forecast endpoint directly. Give it a latitude and longitude, and it returns the full weather forecast in a clean, flat schema.

| Who uses it | What they scrape MET Norway for |
|---|---|
| Outdoor event planners | Checking the upcoming temperature and precipitation for a specific venue. |
| Data scientists | Building a historical dataset of forecasted weather conditions for a research location. |
| Travel apps | Populating a destination's weather outlook without paying for a commercial API. |
| Farmers and growers | Monitoring the predicted wind speed and humidity for a precise field coordinate. |

### What it does

This Actor collects weather forecast data from MET Norway for a single geographic point and returns each forecast interval as a flat row.

- 📍 **Point-based forecast:** provide a single latitude and longitude to get the weather for that exact spot.
- 🔢 **Configurable volume:** set a maximum number of forecast intervals to collect, from a single snapshot up to a million rows.
- 📋 **Structured output:** every forecast interval arrives as a flat row with temperature, wind, humidity, pressure, cloud cover, and precipitation.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

### What you can do with MET Norway data

**🌦️ Populate a travel app with local weather.**

A developer feeds the coordinates of a hotel into the Actor and displays the returned temperature and precipitation forecast on the booking page.

**📊 Build a forecast dataset for a research site.**

A data scientist runs the Actor daily for a remote weather station's coordinates and appends the wind, humidity, and pressure readings to a long-term CSV study.

**🚜 Check field conditions before spraying.**

A farmer enters the field's latitude and longitude to see the predicted wind speed and humidity, then decides whether conditions are right for crop treatment.

**🎪 Plan an outdoor event with confidence.**

An event coordinator pulls the forecast for a park's coordinates to decide if tents and heating are needed for the weekend.

### Why choose this scraper

| | What you get |
|---|---|
| **No API key** | Reads MET Norway's public data, so you skip registration and rate-limit headaches. |
| **Precise location** | Uses decimal coordinates, so you get the forecast for a specific field, venue, or buoy. |
| **Full forecast** | Returns air temperature, wind speed, humidity, pressure, cloud area fraction, and next-hour precipitation. |
| **Flat schema** | Every forecast interval is one row, ready for CSV, JSON, Excel, or XML export. |

### How it compares

No other Store actor targets MET Norway the same way, so the honest comparison is with the alternatives teams actually weigh.

| | MET Norway Weather Forecast Scraper | Build it in-house | By hand |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When MET Norway changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |

### Configure the run

Drive the Actor with a latitude and longitude pair, and set a maximum number of forecast intervals to cap the dataset size. The Input tab lists every parameter.

A first run with the defaults:

```json
{
 "latitude": "59.91",
 "longitude": "10.75",
 "maxItems": 10
}
```

A larger pull:

```json
{
 "latitude": "59.91",
 "longitude": "10.75",
 "maxItems": 200
}
```

### Pricing

Pay-per-result: **$0.005 per result** collected. You pay only for the results written to your dataset.

| Results collected | Approximate cost |
|---|---|
| 100 results | $0.50 |
| 1,000 results | $5.00 |
| 10,000 results | $50.00 |

New Apify accounts start with $5 in free credit.

### Free users

Free-plan runs return up to 10 results as a preview. [Upgrade your Apify plan](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [MET Norway Weather Forecast Scraper](https://apify.com/parseforge/metno-forecast-scraper?fpr=vmoqkp).
3. Set your inputs and any filters, then click **Start**.
4. Export the results as CSV, Excel, JSON, or XML from the **Dataset** tab.

Run it programmatically through the [Apify API](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to MET Norway through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
claude mcp add --transport http apify "https://mcp.apify.com/?tools=parseforge/metno-forecast-scraper"
```

Then prompt it in plain language to run the scraper and read back the results.

### Troubleshooting

**Why am I getting no results?**

Check that your latitude is between -90 and 90 and your longitude is between -180 and 180. Also verify that the coordinates point to a location on land or near the coast, as some open-ocean points may return limited data.

**The Actor returns fewer forecast intervals than my maxItems setting.**

The MET Norway API provides a fixed number of forecast intervals per request, typically around 80 to 90. If you set maxItems higher than this, you will still receive only the available intervals.

**I get an error about invalid coordinates.**

Make sure you are using a period as the decimal separator (59.91, not 59,91) and that the values are within the valid range: latitude -90 to 90, longitude -180 to 180.

**The forecast data looks stale.**

MET Norway updates its forecast approximately every hour. Run the Actor again to fetch the latest available forecast. If the data still appears old, the source may be experiencing a delay.

**Can I get a forecast for a city name instead of coordinates?**

This Actor requires decimal latitude and longitude. You can use any online geocoding tool to convert a city name to coordinates first, then paste them into the input.

### FAQ

| Question | Answer |
|---|---|
| What weather data does this Actor return? | It returns air temperature, wind speed, wind direction, relative humidity, air pressure, cloud area fraction, and precipitation amount for the next hour. Each forecast interval is a separate row. |
| Do I need an API key from MET Norway? | No. This Actor reads the public MET Norway API endpoint, which does not require authentication or an API key. |
| How do I specify the location? | You provide a latitude and longitude in decimal degrees. For example, 59.91 and 10.75 for Oslo, Norway. |
| What coordinate format does the Actor accept? | Decimal degrees only. Latitude must be between -90 and 90, and longitude between -180 and 180. |
| How many forecast intervals can I get? | You set the maximum number of forecast intervals per run, from 1 up to 1,000,000. The MET Norway API typically returns around 80 to 90 intervals per call. |
| Can I scrape forecasts for multiple locations at once? | This Actor is designed for one coordinate pair per run. To scrape multiple locations, run the Actor once for each latitude and longitude pair. |
| What is the forecast time range? | The MET Norway API provides forecasts up to approximately 9 days into the future, delivered in hourly intervals that gradually become less frequent further out. |
| In what formats can I export the forecast data? | You can export the dataset to CSV, JSON, Excel, or XML from the Apify platform. |
| Is this a historical weather scraper? | No. This Actor collects the current weather forecast from MET Norway. It does not retrieve historical observations or past weather data. |
| How often should I run this Actor? | MET Norway updates its forecast roughly every hour. Running the Actor on an hourly schedule will keep your dataset current. |

### Related actors

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) for more scrapers.

🆘 **Need help?** Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by MET Norway. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

# Actor input Schema

## `latitude` (type: `string`):

Required. Latitude of the location in decimal degrees (for example 59.91 for Oslo). Range -90 to 90.

## `longitude` (type: `string`):

Required. Longitude of the location in decimal degrees (for example 10.75 for Oslo). Range -180 to 180.

## `maxItems` (type: `integer`):

Maximum number of forecasts to collect per run.

## Actor input object example

```json
{
  "latitude": "59.91",
  "longitude": "10.75",
  "maxItems": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "latitude": "59.91",
    "longitude": "10.75",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/metno-forecast-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "latitude": "59.91",
    "longitude": "10.75",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/metno-forecast-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "latitude": "59.91",
  "longitude": "10.75",
  "maxItems": 10
}' |
apify call parseforge/metno-forecast-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/metno-forecast-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/9Lhulpc34Uuv5J4hh/builds/xdIeOhFYzfwd0kQ3Y/openapi.json
