Wikisource Texts Scraper avatar

Wikisource Texts Scraper

Pricing

from $1.81 / 1,000 results

Go to Apify Store
Wikisource Texts Scraper

Wikisource Texts Scraper

Scrapes full texts from Wikisource by exact title or full-text search. Returns each work as a flat row with title, language edition, and complete body in plain text or raw wikitext.

Pricing

from $1.81 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

ParseForge

Wikisource Texts Scraper

Scrape full texts from Wikisource by title or search, in plain text or raw wikitext. Every record includes the page title, language edition, and complete body. No login or API key. Export to CSV, JSON, Excel, or XML.

Wikisource hosts millions of free public-domain and source texts, but downloading them one by one is slow and the MediaWiki API returns markup you have to clean yourself. This Actor reads the public pages directly, fetches exact titles or full-text search results, and returns each work as one clean record. Choose plain text for analysis or raw wikitext for archival.

Who uses itWhat they scrape Wikisource for
Digital humanities researchersBuild a corpus of historical texts for computational analysis
Librarians and archivistsHarvest public-domain works for a digital collection
NLP engineersCreate training datasets from clean, out-of-copyright text
Literary scholarsCompare editions of a work across language editions
Content curatorsGather source texts for a reading app or website

What it does

This Actor collects Wikisource texts by exact page title or full-text search, and returns each one as a flat row with the title, language edition, and complete body.

  • ๐Ÿ“š Title or search: fetch exact pages like 'The Raven (Poe)' or run a full-text search across the whole edition.
  • ๐ŸŒ 15 language editions: English, French, German, Spanish, Italian, Russian, Polish, Portuguese, Chinese, Latin, Greek, Dutch, Swedish, Arabic, and Hebrew.
  • ๐Ÿงน Plain text mode: markup stripped, ready for analysis or reading.
  • ๐Ÿ“ Raw wikitext mode: original MediaWiki markup, including templates and formatting.
  • ๐Ÿ”ข Up to a million texts per run: set a hard cap so a broad search never runs away.

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

What you can do with Wikisource data

๐Ÿ“– Build a research corpus.

A digital humanities researcher enters a search term like 'sonnet' and collects every matching poem in plain text for stylometric analysis.

๐ŸŒ Compare translations.

A literary scholar fetches the same title from the English, French, and German editions to study how a classic was translated.

๐Ÿค– Create NLP training data.

An NLP engineer scrapes thousands of public-domain novels in plain text to train a language model without licensing issues.

๐Ÿ—„๏ธ Archive source texts.

A librarian harvests a list of exact titles in raw wikitext to preserve the original formatting and templates.

๐Ÿ“ฑ Populate a reading app.

A content curator pulls a set of classic short stories and exports them as JSON to load into a mobile reading interface.

Why choose this scraper

What you get
No API key or loginReads the public Wikisource pages directly, so you can start a run immediately.
Clean text or raw markupPick plain text for analysis or wikitext for archival, per run.
One row per workEvery record is flat and consistent, ready for CSV, JSON, Excel, or XML export.
Multi-languageQuery any of 15 language editions from the same Actor.

How it compares

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

Wikisource Texts ScraperBuild it in-houseBy hand
SetupRun it now, zero configDays of engineeringNone, but hours per pull
When Wikisource changesMaintained for youYou fix itYou re-learn the page
Proxies, retries, anti-botBuilt inYour problemBrowser only
OutputFixed JSON schema, CSV/Excel exportWhatever you buildCopy-paste
CostPay per resultEngineering timeAnalyst hours

Configure the run

Drive the Actor from exact page titles, a full-text search term, or both together, and set the language edition and text mode before the run starts. The Input tab lists every parameter.

A first run with the defaults:

{
"titles": [
"The Raven (Poe)",
"The Bells (Poe)"
],
"maxItems": 10
}

A larger pull:

{
"titles": [
"The Raven (Poe)",
"The Bells (Poe)"
],
"maxItems": 200
}

Pricing

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

Results collectedApproximate cost
100 results$0.40
1,000 results$4.00
10,000 results$40.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 to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Wikisource Texts Scraper.
  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 (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

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

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/wikisource-texts-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 the exact title matches the Wikisource page name, including parentheses and capitalization. For search, try a broader term or a different language edition.

Why is the text full of markup?

You are in Raw wikitext mode. Switch the Text mode input to Plain text and run again.

Why did the run stop before my search was complete?

The Maximum texts limit was reached. Increase the limit and run again.

Why do I get a different language than I expected?

Each language edition is a separate subdomain. Make sure the Language edition input is set to the one you want.

Why is a title missing even though it exists on Wikisource?

The page name may include a disambiguation suffix or different punctuation. Copy the exact title from the Wikisource URL.

FAQ

QuestionAnswer
Do I need a Wikimedia API key?No. The Actor reads the public Wikisource pages directly, so there is no registration or authentication step.
What is the difference between plain text and raw wikitext?Plain text strips all MediaWiki markup and returns readable text. Raw wikitext returns the original source, including templates, links, and formatting codes.
Can I fetch a specific page by its exact title?Yes. Add one or more exact titles to the Page titles field, for example 'The Raven (Poe)' or 'Pride and Prejudice'. Each title becomes one record.
How does the search field work?It runs a full-text search across the selected language edition and returns matching pages up to the Maximum texts limit.
Can I combine exact titles and a search term in one run?Yes. The Actor fetches all exact titles first, then adds search results, and the Maximum texts cap applies to the total.
Which language editions are supported?English, French, German, Spanish, Italian, Russian, Polish, Portuguese, Chinese, Latin, Greek, Dutch, Swedish, Arabic, and Hebrew.
What does each record contain?Each record includes the page title, the language edition, and the full text body in the mode you selected. The exact field list is shown in the sample output.
Is there a limit on how many texts I can collect?You can set Maximum texts from 1 up to 1,000,000 per run. The default is 10.
Can I export the results?Yes. The dataset can be exported to CSV, JSON, Excel, or XML from the Apify platform.
Is the text in the public domain?Wikisource hosts texts that are free to use, but individual works may have different licenses. Check the page's own license information before redistribution.

Browse the full ParseForge collection 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 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.