# Wikimedia Commons Help Pages Scraper (`parseforge/wikimedia-commons-help-scraper`) Actor

Scrapes Wikimedia Commons help page listings from the MediaWiki API. Returns pageid, ns, and title for each help page. Filter by an optional search term.

- **URL**: https://apify.com/parseforge/wikimedia-commons-help-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.62 / 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)

### Wikimedia Commons Help Pages Scraper

**Scrape Wikimedia Commons help pages by title or get the full documentation set.** Each page returns its ID, namespace, and title in a flat row. No login or API key. Export to CSV, JSON, Excel, or XML.

Wikimedia Commons help documentation is spread across hundreds of pages and changes often. This Actor reads the public MediaWiki API directly, returning every help page title and ID in one fixed schema. Filter by a search term to pull only the guides you need, or leave it empty to download the entire help namespace.

| Who uses it | What they scrape Wikimedia Commons Help Pages Scraper for |
|---|---|
| Technical writers | Audit the current help page inventory for gaps or outdated content. |
| Wikimedia tool developers | Build a local index of help topics to power in-app documentation search. |
| Community managers | Track which help pages exist to link contributors to the right guides. |
| Data analysts | Export the full help page list for content structure analysis. |

### What it does

This Actor collects Wikimedia Commons help page listings from the MediaWiki API and returns each page as a flat row with its page ID, namespace, and title.

- 📋 **Full namespace dump:** Leave the search term empty to scrape every help page in one run.
- 🔍 **Title search:** Provide a search term to filter help pages by title before they reach your dataset.
- 📄 **Flat row output:** Every result is a simple row with pageid, ns, and title, ready for spreadsheets or databases.

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

### What you can do with Wikimedia Commons Help Pages Scraper data

**📚 Build a help page inventory.**

A technical writer runs the Actor without a search term to get every help page title, then reviews the list for outdated or missing topics.

**🔎 Find specific documentation.**

A tool developer enters a search term like 'upload' to pull only upload-related help pages for integration into a user-facing help widget.

**📊 Analyze content structure.**

A data analyst exports the full help page list to CSV and maps how Wikimedia Commons organizes its documentation across topics.

**🔄 Monitor documentation changes.**

A community manager schedules regular runs to detect new or removed help pages and update internal wikis accordingly.

### Why choose this scraper

| | What you get |
|---|---|
| **No API key** | Reads the public MediaWiki API with zero authentication. |
| **Fixed schema** | Every page returns the same three fields: pageid, ns, title. |
| **Full coverage** | Namespace 12 contains all official help documentation. |
| **Lightweight** | JSON API responses are small and fast to paginate. |

### What a Wikimedia Commons Help Pages Scraper record looks like

Every record returns as one flat JSON row. Here is a real one from a run:

```json
{
 "pageid": 28938658,
 "ns": 12,
 "title": "Help:\"Nomear para exclusão\" link da caixa de ferramentas",
 "url": "https://commons.wikimedia.org/wiki/Help%3A%22Nomear_para_exclus%C3%A3o%22_link_da_caixa_de_ferramentas",
 "scrapedAt": "2026-09-05T03:35:45.617Z"
}
```

Every value above comes from a real run. A field a record does not have comes back as `null`.

### Configure the run

Drive the Actor with an optional search term to filter help pages by title, and set a max items limit to control the run size. The Input tab lists every parameter.

A first run with the defaults:

```json
{
 "maxItems": 10
}
```

A larger pull:

```json
{
 "maxItems": 200
}
```

### 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 more results per run.

### Run it

1. [Create a free Apify account](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [Wikimedia Commons Help Pages Scraper](https://apify.com/parseforge/wikimedia-commons-help-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 Wikimedia Commons Help Pages Scraper 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/wikimedia-commons-help-scraper"
```

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

### Troubleshooting

**Why am I getting no results?**

Check your search term. The filter is case-sensitive and must match part of a help page title exactly. Try leaving the search term empty to confirm the full listing works.

**Why did the run stop before reaching my max items limit?**

The Actor stops when the API returns no more pages. Wikimedia Commons has a finite number of help pages, so the actual total may be lower than your max items setting.

**Why do I only get 10 items on a free account?**

Free accounts are limited to 10 items per run as a preview. Upgrade to a paid plan to scrape more items.

**The Actor returns page IDs but not the help content. How do I get the text?**

This Actor is designed for page listing only. To fetch full page content, you would need to call the MediaWiki parse API with each pageid in a separate workflow.

### FAQ

| Question | Answer |
|---|---|
| Do I need a Wikimedia account or API key? | No. This Actor reads the public MediaWiki API, which requires no authentication for reading help page listings. |
| What data does each result contain? | Each result is a flat row with three fields: pageid (the numeric page ID), ns (the namespace, always 12 for Help), and title (the page title). |
| Can I get the full text of each help page? | This Actor returns the page listing only. To fetch full page content, you would need a separate Actor that calls the parse API for each pageid. |
| How do I filter for specific help pages? | Use the optional search term input. The Actor filters page titles server-side via the API, so only matching pages reach your dataset. |
| What is the maximum number of pages I can scrape? | Free users are limited to 10 items for preview. Paid users can scrape more items per run. |
| Does this Actor handle pagination automatically? | Yes. The Actor follows the API's continue token to paginate through all available help pages until your max items limit is reached. |
| What export formats are supported? | You can export your dataset to CSV, JSON, Excel, or XML from the Apify platform. |
| Is this Actor affected by rate limiting? | The MediaWiki API is designed for read access and generally does not impose strict rate limits for this type of listing request. |
| Can I schedule this Actor to run periodically? | Yes. Apify supports scheduled runs so you can monitor the help page listing daily, weekly, or on any cron schedule. |

### 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.

### Pricing

This Actor uses **pay-per-result** pricing: **$0.004 per result** collected. You are billed only for the results you receive, so a run that returns nothing costs nothing.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Wikimedia Foundation, Inc. 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

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

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## `searchTerm` (type: `string`):

Optional search term to filter help pages by title. Leave empty to scrape all help pages.

## Actor input object example

```json
{
  "maxItems": 10
}
```

# Actor output Schema

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

Complete dataset of all scraped records.

# 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 = {
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/wikimedia-commons-help-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 = { "maxItems": 10 }

# Run the Actor and wait for it to finish
run = client.actor("parseforge/wikimedia-commons-help-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 '{
  "maxItems": 10
}' |
apify call parseforge/wikimedia-commons-help-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/wikimedia-commons-help-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/SNtY1iRb9y7oyGjzr/builds/401h7XijKYwmxxgvZ/openapi.json
