WhoScored Scraper
Extract football match ratings, player performance scores, and tactical analysis from WhoScored. Powered by spider-browser .
Extract data in minutes
import { SpiderBrowser } from "spider-browser";
const spider = new SpiderBrowser({
apiKey: process.env.SPIDER_API_KEY!,
stealth: 2,
});
await spider.connect();
const page = spider.page!;
await page.goto("https://www.whoscored.com/Statistics");
await page.content();
const data = await page.evaluate(`(() => {
const players = [];
document.querySelectorAll("#statistics-table-summary tbody tr").forEach(el => {
const name = el.querySelector(".player-link")?.textContent?.trim();
const team = el.querySelector(".team-name")?.textContent?.trim();
const rating = el.querySelector(".rating")?.textContent?.trim();
const apps = el.querySelector("td:nth-child(4)")?.textContent?.trim();
const goals = el.querySelector("td:nth-child(5)")?.textContent?.trim();
const assists = el.querySelector("td:nth-child(6)")?.textContent?.trim();
if (name) players.push({ name, team, rating, apps, goals, assists });
});
return JSON.stringify({ total: players.length, players: players.slice(0, 15) });
})()`);
console.log(JSON.parse(data));
await spider.close(); Structured data endpoint
Extract structured JSON from whoscored.com with a single POST request. AI-configured selectors, cached for fast repeat calls.
curl -X POST https://api.spider.cloud/fetch/whoscored.com/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"return_format": "json"}' import requests
resp = requests.post(
"https://api.spider.cloud/fetch/whoscored.com/",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
json={"return_format": "json"},
)
print(resp.json()) const resp = await fetch("https://api.spider.cloud/fetch/whoscored.com/", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({ return_format: "json" }),
});
const data = await resp.json();
console.log(data); Data you can extract
Live scores & stats
Extract real-time scores, player stats, and standings from whoscored.com.
Dynamic scoreboards
Full browser rendering for live-updating scoreboards and stat tables.
League coverage
Scrape across multiple leagues, seasons, and teams concurrently.
More Sports & Fitness scrapers
Extract live scores, game schedules, standings, and sports news from ESPN across all major leagues.
Extract NBA game scores, player stats, team standings, and league news from the official NBA site.
Extract NFL game scores, team schedules, player stats, and league news from the official NFL site.
Start scraping whoscored.com
Get your API key and start extracting data in minutes.