Scraping Wikipedia
Extract articles, infoboxes, and build knowledge graphs from Wikipedia
Learn how to effectively scrape Wikipedia for research, knowledge extraction, and building AI applications.
Setup
npm install firecrawl zodUse Cases
- Research automation and fact-checking
- Building knowledge graphs
- Multi-language content extraction
- Educational content aggregation
- Entity information extraction
Scrape with JSON Mode
Extract structured data from Wikipedia articles using Zod schemas.
import { Firecrawl } from 'firecrawl';
import { z } from 'zod';
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
const result = await firecrawl.scrape('https://en.wikipedia.org/wiki/JavaScript', {
formats: [{
type: 'json',
schema: z.object({
name: z.string(),
creator: z.string(),
firstAppeared: z.string(),
typingDiscipline: z.string(),
website: z.string()
})
}]
});
console.log(result.json);Search
Find articles on Wikipedia.
import { Firecrawl } from 'firecrawl';
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
const searchResult = await firecrawl.search('quantum computing site:en.wikipedia.org', {
limit: 10,
sources: [{ type: 'web' }], // { type: 'news' }, { type: 'images' }
scrapeOptions: {
formats: ['markdown']
}
});
console.log(searchResult);Scrape
Scrape a single Wikipedia article.
import { Firecrawl } from 'firecrawl';
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
const result = await firecrawl.scrape('https://en.wikipedia.org/wiki/Artificial_intelligence', {
formats: ['markdown'], // i.e. html, links, etc.
onlyMainContent: true
});
console.log(result);Map
Discover all available URLs in a Wikipedia portal or category. Note: Map returns URLs only, without content.
import { Firecrawl } from 'firecrawl';
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
const mapResult = await firecrawl.map('https://en.wikipedia.org/wiki/Portal:Computer_science');
console.log(mapResult.links);
// Returns array of URLs without contentCrawl
Crawl multiple pages from Wikipedia documentation or categories.
import { Firecrawl } from 'firecrawl';
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
const crawlResult = await firecrawl.crawl('https://en.wikipedia.org/wiki/Portal:Artificial_intelligence', {
limit: 10,
scrapeOptions: {
formats: ['markdown']
}
});
console.log(crawlResult.data);Batch Scrape
Scrape multiple Wikipedia URLs simultaneously.
import { Firecrawl } from 'firecrawl';
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });
// Wait for completion
const job = await firecrawl.batchScrape([
'https://en.wikipedia.org/wiki/Machine_learning',
'https://en.wikipedia.org/wiki/Artificial_intelligence',
'https://en.wikipedia.org/wiki/Deep_learning'],
{
options: {
formats: ['markdown']
},
pollInterval: 2,
timeout: 120
}
);
console.log(job.status, job.completed, job.total);
console.log(job);Was this page helpful?Suggest editsRaise issue