# Planning Portal UK News Scraper - Low-cost💲🔥📰🇬🇧 (`delectable_incubator/planning-portal-uk-news-scraper-low-cost`) Actor

📰🔎 Extract Planning Portal UK news bulletins from one or multiple URLs. Collect bulletin titles, summaries, topics, slugs, article URLs, publication data, and key planning insights. Ideal for planning policy monitoring, property development research and UK planning news tracking. 📊🏗️

- **URL**: https://apify.com/delectable\_incubator/planning-portal-uk-news-scraper-low-cost.md
- **Developed by:** [Prime Scrape](https://apify.com/delectable_incubator) (community)
- **Categories:** News, Lead generation, Automation
- **Stats:** 1 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.00005 / actor start

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

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

<p align="center">
<img src="https://i.ibb.co/jkNS73wX/readme.png" alt="Planning Portal UK Scraper" width="100%">
</p>

---

## 🏗️🇬🇧 Planning Portal UK Scraper | Bulk Planning Applications Scraper | Apify Actor

### 🚀 Extract UK Planning Applications in Seconds (No Code)

The **Planning Portal UK Scraper (Apify Actor)** is a powerful, scalable and **SEO-optimized planning application scraping tool** designed to extract public planning records, building applications, development proposals and council planning data from Planning Portal UK.

Collect structured planning application datasets for **property intelligence, real estate research, construction monitoring, land development analysis, lead generation, AI datasets and market intelligence.**

---

### 🔥 Why This Planning Portal UK Scraper?

✔ Best Planning Portal UK scraper on Apify

✔ Supports **Bulk URL Scraping (SEO BOOST 🚀)**

✔ Fast & scalable planning application extraction

✔ Extract planning records in bulk

✔ 100% structured JSON / CSV / Excel output

✔ Ideal for property developers & planning consultants

✔ Perfect for construction intelligence

✔ No coding required

---

### 🎯 What This Scraper Does

This Apify Actor extracts detailed information from Planning Portal UK application pages.

#### 📌 Core Features

✅ Scrape Planning Portal application pages

✅ Bulk URL scraping support

✅ Extract planning application references

✅ Extract application status

✅ Extract application type

✅ Extract applicant information

✅ Extract proposal descriptions

✅ Extract property addresses

✅ Extract decision dates

✅ Extract application dates

✅ Extract local authority information

✅ Extract planning officer data (when available)

✅ Auto pagination handling

✅ High-speed extraction engine

✅ Clean structured datasets

---

### ⚡ Input Configuration (Simple & Powerful)

#### 🔥 BULK URL MODE (SEO BOOST 🚀)

````

{
"urls": \[
"https://planning.org.uk/application/123456",
"https://planning.org.uk/application/987654",
"https://planning.org.uk/application/555555"
]
}

```

Simply paste hundreds or thousands of application URLs.

The actor automatically processes them in bulk.

---

### 📊 Extracted Planning Data

| Field                | Description                           |
| -------------------- | ------------------------------------- |
| applicationReference | Planning application reference        |
| applicationType      | Type of planning application          |
| applicationStatus    | Current application status            |
| proposal             | Development proposal                  |
| address              | Property address                      |
| applicantName        | Applicant name                        |
| decision             | Planning decision                     |
| decisionDate         | Decision date                         |
| submittedDate        | Submission date                       |
| authority            | Local planning authority              |
| officer              | Planning officer (if available)       |
| applicationUrl       | Original application URL              |
| documents            | Related planning documents            |
| coordinates          | Geographic coordinates (if available) |

---

### 💡 Use Cases (High Demand SEO Keywords)

This Planning Portal UK scraper is used for:

🏗️ Planning application scraping

🏘️ Property development intelligence

📊 UK planning market analysis

🏢 Construction lead generation

🌍 Land development monitoring

📈 Real estate analytics

🤖 AI training datasets

🏠 Planning permission tracking

🚧 Construction project monitoring

⚡ Bulk planning application extraction

---

### 🚀 Key Features (Apify SEO Optimized)

⚡ Bulk URL scraping support

🏗️ UK planning application coverage

📌 Smart extraction engine

🧠 Clean structured output

📊 High-speed scraping engine

🔁 Auto retry & stability system

💾 Export-ready datasets

⚙️ Scalable cloud execution

🚀 Enterprise-ready architecture

---

### 📤 Output Formats Supported

✔ JSON

✔ CSV

✔ Excel XLSX

✔ XML

✔ HTML

✔ API Integration

✔ Data Pipelines

---

### 📦 Example Output

```

{
"applicationReference": "22/12345/FULL",
"applicationType": "Full Planning Permission",
"applicationStatus": "Approved",
"proposal": "Construction of two-storey rear extension",
"address": "123 High Street, London",
"applicantName": "John Smith",
"decision": "Approved",
"decisionDate": "2025-08-12",
"submittedDate": "2025-06-01",
"authority": "London Borough Council",
"applicationUrl": "https://planningportal.co.uk/application/123456"
}

````

---

### 🔥 Why This is the BEST Planning Portal UK Scraper on Apify?

✔ Optimized for Apify marketplace ranking

✔ Bulk URL support

✔ High-performance extraction engine

✔ Structured planning datasets

✔ Enterprise scalability

✔ Property intelligence ready

✔ Construction monitoring ready

✔ Lead generation ready

✔ Market research ready

---

### 💸 Pricing

This scraper runs on a **pay-per-result pricing model**.

You only pay for successfully extracted records.

💳 Price: $4.99 / 1,000 results

---

### ❓ FAQ (SEO BOOST SECTION)

#### Can I scrape multiple planning applications at once?

Yes. Bulk URL mode is fully supported.

#### Can I monitor planning permissions?

Yes. The scraper extracts planning status and decision information.

#### Is this scraper fast?

Yes. It is optimized for large-scale extraction.

#### Can I export data?

Yes. JSON, CSV, Excel, XML and HTML formats are supported.

#### Is coding required?

No. This is a fully no-code Apify Actor.

#### Can I use this for property intelligence?

Absolutely. It is ideal for developers, investors and planning consultants.

---

### ⚠️ Disclaimer

This tool is not affiliated with Planning Portal UK or any local authority.

It is an independent public data extraction solution.

---

### 🔗 Related Actors (PrimeScrape Ecosystem)

We are building a complete data intelligence ecosystem:

👉 Planning & Property Intelligence

👉 Real Estate Intelligence

👉 Business Intelligence

👉 Market Research Automation

👉 AI Dataset Collection

👉 Lead Generation Systems

More PrimeScrape actors coming soon 🚀

---

### 🌍 PrimeScrape Ecosystem

Built for:

🏗️ Planning Intelligence

🏠 Real Estate Analytics

📊 Market Research

🤖 AI Training Datasets

⚙️ Automation Pipelines

🏢 Business Intelligence

🚀 Enterprise Data Collection

---

### 📬 Support

⭐⭐⭐⭐⭐ Leave a review if you like this scraper

📩 Contact us for custom scraping solutions, enterprise integrations and large-scale data collection projects.

# Actor input Schema

## `urls` (type: `array`):

List of Planning Portal news URLs to scrape.

Example:
• https://www.planningportal.co.uk/services/weekly-planning-news

⚠️ Each URL must be from planningportal.co.uk.
## `maxitems` (type: `integer`):

Maximum number of news bulletins to collect per URL. 

## Actor input object example

```json
{
  "urls": [
    "https://www.planningportal.co.uk/services/weekly-planning-news"
  ],
  "maxitems": 10
}
````

# Actor output Schema

## `overview` (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 = {
    "urls": [
        "https://www.planningportal.co.uk/services/weekly-planning-news"
    ],
    "maxitems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("delectable_incubator/planning-portal-uk-news-scraper-low-cost").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 = {
    "urls": ["https://www.planningportal.co.uk/services/weekly-planning-news"],
    "maxitems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("delectable_incubator/planning-portal-uk-news-scraper-low-cost").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "urls": [
    "https://www.planningportal.co.uk/services/weekly-planning-news"
  ],
  "maxitems": 10
}' |
apify call delectable_incubator/planning-portal-uk-news-scraper-low-cost --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=delectable_incubator/planning-portal-uk-news-scraper-low-cost",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Planning Portal UK News Scraper - Low-cost💲🔥📰🇬🇧",
        "description": "📰🔎 Extract Planning Portal UK news bulletins from one or multiple URLs. Collect bulletin titles, summaries, topics, slugs, article URLs, publication data, and key planning insights. Ideal for planning policy monitoring, property development research and UK planning news tracking. 📊🏗️",
        "version": "0.0",
        "x-build-id": "or3Qwxd5OMBu5SV03"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/delectable_incubator~planning-portal-uk-news-scraper-low-cost/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-delectable_incubator-planning-portal-uk-news-scraper-low-cost",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/delectable_incubator~planning-portal-uk-news-scraper-low-cost/runs": {
            "post": {
                "operationId": "runs-sync-delectable_incubator-planning-portal-uk-news-scraper-low-cost",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/delectable_incubator~planning-portal-uk-news-scraper-low-cost/run-sync": {
            "post": {
                "operationId": "run-sync-delectable_incubator-planning-portal-uk-news-scraper-low-cost",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "urls",
                    "maxitems"
                ],
                "properties": {
                    "urls": {
                        "title": "Planning Portal URLs 🌐",
                        "type": "array",
                        "description": "List of Planning Portal news URLs to scrape.\n\nExample:\n• https://www.planningportal.co.uk/services/weekly-planning-news\n\n⚠️ Each URL must be from planningportal.co.uk.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxitems": {
                        "title": "Maximum Items per URL 📄",
                        "type": "integer",
                        "description": "Maximum number of news bulletins to collect per URL. ",
                        "default": 10
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
