
Lichess Player Scraper
hipersoft/lichess-scraper
Scrape Lichess player data in bulk: title, real name, country, FIDE rating and ratings for bullet, blitz, rapid, classical, correspondence and puzzles, plus games played, win/loss/draw counts, play time and account age. Just pass usernames. One row per player as JSON, CSV or Excel.
Total users
2Monthly users
1Total runs
36Per player scraped
$0.0008Last rebuilt
Oct 26, 2026Overview
Pull Lichess player data in bulk with the Lichess Player Scraper. Pass a list of usernames and export each player's title, real name, country, FIDE rating and ratings for bullet, blitz, rapid, classical, correspondence and puzzles — plus games played, win/loss/draw counts, play time and account age — one clean row per player as JSON, CSV or Excel.
Built for chess coaches and analysts, tournament organisers, chess apps and leaderboards, and research, it turns a list of usernames into a structured ratings dataset.
What it does
- ♟️ Ratings across variants — bullet, blitz, rapid, classical, correspondence and puzzle ratings.
- 📊 Game record — total and rated games with win/loss/draw counts.
- 🏅 Identity — title (GM, IM…), real name, country and FIDE rating.
- ⏱️ Activity — total play time, account creation date, last-seen and online status.
- 📤 Export anywhere — JSON, CSV or Excel, or straight into a leaderboard, sheet or app.
Example output
{
"username": "penguingm1",
"title": "GM",
"realName": "Andrew Tang",
"bulletRating": 2542,
"blitzRating": 1027,
"rapidRating": 1516,
"fideRating": 2461,
"gamesTotal": 3281,
"wins": 2391, "losses": 832, "draws": 58
}
How to use it
- Add a list of usernames (or profile URLs).
- Set Max players if you want a cap.
- Run, and download the results as JSON, CSV or Excel.
Input fields
| Field | Description |
|---|---|
| Lichess usernames | Usernames or profile URLs to look up. |
| Max players | Maximum players to process (0 = no limit). |
Output fields
username, found, title, patron, verified, realName, country, fideRating, bio, bulletRating, blitzRating, rapidRating, classicalRating, correspondenceRating, puzzleRating, gamesTotal, gamesRated, wins, losses, draws, playTimeHours, createdAt, lastSeen, online, url.
Popular use cases
- Coaching & analysis — pull ratings and records for a group of students.
- Tournaments & clubs — build leaderboards and seed by rating.
- Chess apps — power profile and rating displays.
- Research — study rating distributions across variants and players.
- Community tools — track members' ratings and activity over time.
FAQ
Do I need an account or key? No. Add usernames and run — only public player data is collected.
Which ratings are included? Bullet, blitz, rapid, classical, correspondence and puzzle ratings, plus FIDE rating where set.
Can I look up many players at once? Yes — add a list of usernames and each is processed individually.
Can I export to Excel or Google Sheets? Yes — results download as JSON, CSV or Excel and integrate with Sheets, apps and leaderboards.
Bulk Lichess player profiles and ratings — across every variant, with game records and FIDE — clean and export-ready for coaching, tournaments and apps.
Input
| Field | Type | Description |
|---|---|---|
usernamesLichess usernames | array | Lichess usernames or profile URLs — e.g. 'thibault', 'penguingm1'. Each is looked up individually. |
maxItemsMax players | integer | Maximum number of players to process (0 = no limit). Default: 0 |
API
curl -X POST "https://api.apify.com/v2/acts/hipersoft~lichess-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"usernames": [
"thibault",
"penguingm1"
]
}'from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("hipersoft/lichess-scraper").call(run_input={
"usernames": [
"thibault",
"penguingm1"
]
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('hipersoft/lichess-scraper').call({
"usernames": [
"thibault",
"penguingm1"
]
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Pricing
| Event | Price | Paid plans from |
|---|---|---|
| Player scraped Charged for each Lichess player returned. | $0.0008 | $0.0004 |
You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.
Related scrapers
Dribbble Shots Scraper
Scrape public design shots from Dribbble: title, high-res image, tags, likes, views and designer credit. Filter by category or sort, export JSON, CSV or Excel.
359 runs · 5 users · $0.003 / shot scrapedComputrabajo Scraper
Scrape Computrabajo job listings across Latin America (Mexico, Colombia, Argentina, Chile, Peru and more): title, company, location, salary, posted date and apply URL. Filter by country and keyword. No setup.
206 runs · 4 users · $0.002 / listing scrapedKraken Market Data Scraper
Fetch Kraken spot market data in bulk: ticker stats (ask, bid, last, 24h high/low/volume/vwap), OHLC candles for any interval, order book depth (top bids/asks), and tradable pair metadata. Fast, clean and cheap.
165 runs · 4 users · $0.001 / pair scrapedBayt Scraper
Scrape Bayt.com job listings across the Middle East (UAE, Saudi Arabia, Egypt, Qatar and more): title, company, location, posted date and apply URL. Filter by country and keyword.
134 runs · 4 users · $0.003 / job scrapedGitHub Scraper
Search GitHub and scrape repositories (stars, forks, language, topics, license, dates) or user profiles (name, company, location, bio, followers, public email, repos). Uses the GitHub REST API; optional token for higher rate limits. For developer lead generation, OSS research and recruiting.
131 runs · 7 users · $0.0008 / item scrapedHacker News Scraper
Scrape Hacker News stories, comments, Ask HN, Show HN, jobs and polls by keyword, points, comments and date range. Sort by relevance or newest. Title, URL, author, points, comment count, text and HN link. Fast clean HTTP via the HN Algolia API, no setup.
130 runs · 2 users · $0.004 / item scrapedSend the site and the fields. We build it and you get it first.