Crawling API / Exercism

Скрапер Exercism.
Каждый трек, полностью отрендеренный.

Отправьте любой URL Exercism и получите обратно полностью отрендеренный HTML через резидентные прокси со встроенной обработкой анти-бот-защиты.
Или получите структурированный JSON со скраперами exercism-serp, exercism-exercise, exercism-solutions и exercism-solution.

99% успешных запросов140M резидентных IP30 регионов
URL ExercismHTML or JSONexercism.org/tracks/ruby/exercisesCrawlbaseМаршрутизацияРендерингИзвлечениеОтрендеренный HTMLСтруктурированный JSONcrawling-apiexercism-solutionexercism.org · рендеринг + парсинг · 200
Живой поток краулинга · Exercism1.24M req/minСтриминг
200exercism.org/tracks/python/exercises/leap/solutionsDE40ms
200exercism.org/tracks/go/exercisesSG192ms
200exercism.org/tracks/ruby/exercises/two-ferJP89ms
200exercism.org/tracks/python/exercises/leapFR100ms
200exercism.org/tracks/csharp/exercisesSG87ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsGB161ms
200exercism.org/tracks/python/exercisesES65ms
200exercism.org/tracks/python/exercises/leap/solutionsGB156ms
200exercism.org/tracks/python/exercises/leap/solutionsES114ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsIN171ms
200exercism.org/tracks/go/exercises/weather-forecastIN61ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsGB55ms
200exercism.org/tracks/python/exercisesFR130ms
200exercism.org/tracks/javascript/exercisesNL139ms
404exercism.org/tracks/go/exercisesBR81ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsNL114ms
301exercism.org/tracks/rust/exercisesIN196ms
301exercism.org/tracks/python/exercises/leap/solutionsBR120ms
200exercism.org/tracks/go/exercises/weather-forecastUS168ms
200exercism.org/tracks/python/exercises/leap/solutionsES199ms
200exercism.org/tracks/go/exercises/weather-forecastNL215ms
200exercism.org/tracks/ruby/exercises/high-scores/solutionsES146ms
200exercism.org/tracks/python/exercises/guidos-gorgeous-lasagnaSG83ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsES179ms
301exercism.org/tracks/rust/exercises/reverse-stringNL90ms
200exercism.org/tracks/ruby/exercises/two-ferNL209ms
200exercism.org/tracks/python/exercises/leap/solutionsDE40ms
200exercism.org/tracks/go/exercisesSG192ms
200exercism.org/tracks/ruby/exercises/two-ferJP89ms
200exercism.org/tracks/python/exercises/leapFR100ms
200exercism.org/tracks/csharp/exercisesSG87ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsGB161ms
200exercism.org/tracks/python/exercisesES65ms
200exercism.org/tracks/python/exercises/leap/solutionsGB156ms
200exercism.org/tracks/python/exercises/leap/solutionsES114ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsIN171ms
200exercism.org/tracks/go/exercises/weather-forecastIN61ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsGB55ms
200exercism.org/tracks/python/exercisesFR130ms
200exercism.org/tracks/javascript/exercisesNL139ms
404exercism.org/tracks/go/exercisesBR81ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsNL114ms
301exercism.org/tracks/rust/exercisesIN196ms
301exercism.org/tracks/python/exercises/leap/solutionsBR120ms
200exercism.org/tracks/go/exercises/weather-forecastUS168ms
200exercism.org/tracks/python/exercises/leap/solutionsES199ms
200exercism.org/tracks/go/exercises/weather-forecastNL215ms
200exercism.org/tracks/ruby/exercises/high-scores/solutionsES146ms
200exercism.org/tracks/python/exercises/guidos-gorgeous-lasagnaSG83ms
200exercism.org/tracks/ruby/exercises/two-fer/solutionsES179ms
301exercism.org/tracks/rust/exercises/reverse-stringNL90ms
200exercism.org/tracks/ruby/exercises/two-ferNL209ms
01 Живое демо

Четыре скрапера Exercism. Чистый JSON от каждого.

Четыре скрапера Exercism, вводятся вживую. exercism-serp перечисляет упражнения трека, exercism-exercise берёт одно упражнение с инструкциями, exercism-solutions ранжирует решения сообщества, а exercism-solution возвращает одно опубликованное решение с исходным кодом. Переключайте вкладки или наведите, чтобы приостановить и прочитать.

готово
клавиши 1-4 переключают · клик для паузызапустите свой URL
Запустите первый запрос за минуты. До 20 000 бесплатных запросов, без кредитной карты.Начать бесплатно
02 Возможности

Один API, каждый уголок Exercism.

Четыре специализированных скрапера покрывают важные страницы: списки упражнений трека, отдельные упражнения, списки решений сообщества и отдельные опубликованные решения. Crawling API рендерит каждую страницу в реальном браузере, достигает её через резидентные IP и выдаёт вам чистый HTML или JSON.

треки

Каждый языковой трек

exercism-serp превращает список упражнений любого трека в JSON: каждое упражнение с его slug, типом, заголовком, сложностью, описанием и статусом разблокировки, плюс число упражнений трека.

упражнения

Полные инструкции к упражнению

exercism-exercise возвращает обзор одного упражнения с его заголовком, сложностью и полными инструкциями как в виде текста, так и HTML.

решения

Списки решений сообщества

exercism-solutions возвращает постраничный список решений сообщества для упражнения, каждое с автором, языком, звёздами, комментариями, просмотрами, итерациями и отрывком.

исходный код

Полные опубликованные решения

Добавьте scraper=exercism-solution чтобы вернуть одно опубликованное решение с его полным исходным кодом, историей итераций, статусом тестов и автором.

прокси

140M резидентных IP

Каждый запрос ротирует резидентный IP по 30 регионам и преодолевает проверки бота автоматически. Ничего не нужно решать, ничего не нужно поддерживать.

один токен

Один API для каждой страницы

Crawling API работает с любым URL, поэтому один и тот же токен покрывает каждый трек Exercism и всё остальное, что вы краулите. Смотреть живое демо.

03 Вывод

Каждое поле решения как чистый JSON.

Отправьте URL решения с scraper=exercism-solution и решение возвращается типизированным JSON, включая исходный код. Замените на exercism-serp, exercism-exercise или exercism-solutions для списков, инструкций и решений сообщества.

{ "url": "https://exercism.org/tracks/ruby/exercises/two-fer/solutions/neilnorthrop", "track": { "slug": "ruby", "title": "Ruby" }, "exercise": { "slug": "two-fer", "type": "practice", "title": "Two Fer", "difficulty": "easy" }, "author": { "handle": "neilnorthrop" }, "language": "ruby", "numStars": 42, "numIterations": 2, "isOutOfDate": false, "publishedIterationIdx": 2, "publishedAt": "2021-03-14T09:12:07Z", "iterations": [ { "idx": 1, "testsStatus": "passed", "isPublished": false }, { "idx": 2, "testsStatus": "passed", "isPublished": true } ], "code": "def two_fer(name = \"you\")\n \"One for #{name}, one for me.\"\nend" }

Решение

url · string  track.title · string  language · string  numStars · number

Упражнение

exercise.slug · string  exercise.title · string  exercise.type · string  exercise.difficulty · string

Автор

author.handle · string  publishedAt · string  numIterations · number

Итерации

iterations[].idx · number  iterations[].testsStatus · string  iterations[].isPublished · boolean

Код

code · string  isOutOfDate · boolean  publishedIterationIdx · number

04 Как это работает

От URL до данных за один вызов.

Каждый запрос к Exercism проходит один и тот же путь. Вы отправляете URL, мы управляем всем остальным.

01

Отправьте URL

Передайте любой публичный URL Exercism с вашим токеном: список упражнений трека, упражнение, список решений или отдельное опубликованное решение.

02

Ротируйте прокси

Резидентный IP и регион, которые чисто достигают сайта, из 140M IP по 30 регионам.

03

Отрендерьте страницу

Реальный браузер загружает страницу, чтобы упражнения, решения и код отрендерились до захвата.

04

Преодолейте анти-бот

Проверки бота и лимиты частоты сайта обрабатываются автоматически. Ничего не нужно решать, ничего не нужно поддерживать.

05

Верните HTML или JSON

Возвращается полностью отрендеренный HTML или типизированный JSON, когда вы добавляете exercism-serp, exercism-exercise, exercism-solutions или exercism-solution.

05 Сценарии использования

Что команды строят на данных Exercism.

USE / 01Обучение

Обучающие данные для кода и RAG

Подавайте чистые условия упражнений и реальные опубликованные решения в модели, RAG-пайплайны и кодовые агенты через один API.

USE / 02Бенчмарки

Бенчмарки решений

Собирайте структурированные наборы данных решений по языкам, со звёздами, итерациями и статусом тестов, для оценки и бенчмарков.

USE / 03Учебный план

Синхронизация учебного плана и каталога

Зеркальте списки упражнений трека, типы, сложность и порядок разблокировки, чтобы поддерживать обучающие платформы и каталоги в синхронизации.

USE / 04Исследования

Исследования языков и стиля

Сравнивайте, как одно и то же упражнение решается на разных языках и разными авторами, чтобы изучать идиомы, паттерны и историю итераций.

USE / 05Контент

Пайплайны документации и контента

Извлекайте инструкции к упражнениям как текст и HTML, чтобы питать туториалы, документацию и учебные руководства.

USE / 06Охват

Любой URL, один API

Краульте треки, упражнения, списки решений и отдельные решения, плюс любой другой сайт, который вам нужен.

06 Заметки

Полезно знать при скрапинге Exercism.

Четыре скрапера, четыре типа страниц

exercism-serp читает список упражнений трека, exercism-exercise - одно упражнение, exercism-solutions - список решений сообщества, а exercism-solution - одно опубликованное решение с его кодом.

HTML по умолчанию, JSON по запросу

Вы получаете полностью отрендеренный HTML. Добавьте scraper=exercism-serp, exercism-exercise, exercism-solutions или exercism-solution для распарсенного JSON или парсите HTML сами.

Списки решений постраничны

exercism-solutions возвращает page, totalPages, totalCount и solutionCount вместе с массивом решений, поэтому вы можете пройти каждую страницу для упражнения.

Достигайте сайта откуда угодно

Геотаргетинг по 30 регионам и 140M резидентных IP означает стабильный доступ без управления прокси.

07 Почему Crawlbase

Создано для краулинга Exercism в масштабе.

Crawling API работает на той же сети, что обслуживает более 46 000 платящих клиентов и 70 000 разработчиков. Никаких прокси для покупки, никаких браузеров для запуска, ничего не нужно патчить, когда сайт меняется.

99%
Средний процент успешных запросов
140M
Резидентных IP, плюс 98M датацентровых
30
Регионов для точных локальных результатов
20/s
Запросов в секунду по умолчанию, больше по запросу

Один токен, официальные SDK для Python, Node и Ruby и сеть с аптаймом 99,99% под капотом.

08 FAQ

Вопросы о скрапинге Exercism.

Отправьте любой URL Exercism в Crawlbase Crawling API с вашим токеном. Crawlbase ротирует резидентный прокси, рендерит страницу в реальном браузере, преодолевает проверки бота и возвращает полностью отрендеренный HTML. Добавьте специализированный скрапер (scraper=exercism-serp, exercism-exercise, exercism-solutions или exercism-solution), чтобы вместо этого получить структурированный JSON.
Да. По умолчанию Crawling API возвращает отрендеренный HTML; добавьте специализированный скрапер, чтобы получить структурированный JSON: exercism-serp для списка упражнений трека, exercism-exercise для одного упражнения, exercism-solutions для списка решений сообщества и exercism-solution для одного опубликованного решения с его итерациями и кодом.
Списки упражнений трека, страницы отдельных упражнений, списки решений сообщества и отдельные опубликованные решения по каждому языковому треку на exercism.org. Тот же API работает и на любом другом сайте.
Crawlbase маршрутизирует каждый запрос через ротирующиеся резидентные IP по 30 регионам и преодолевает проверки бота автоматически, поэтому доступ остаётся стабильным, и нечего поддерживать, когда сайт меняет свою конфигурацию.
exercism-serp возвращает список упражнений трека, каждая запись с её slug, типом, заголовком, сложностью, описанием и статусом разблокировки. exercism-exercise возвращает обзор одного упражнения и полные инструкции. exercism-solutions возвращает постраничный список решений сообщества с автором, языком, звёздами, комментариями, просмотрами и числом итераций. exercism-solution возвращает одно опубликованное решение с его полным исходным кодом, историей итераций и автором.
Да. Скрапер exercism-solution возвращает полный исходный код опубликованного решения вместе с его историей итераций, статусом тестов, числом звёзд и хендлом автора.
Начните бесплатно с 20 000 запросов и без кредитной карты. Платные планы масштабируются с использованием, и тот же токен работает во всех Crawling API и каждом скрапере Crawlbase.

Начните скрапить Exercism.
Забудьте о прокси и лимитах частоты.

Бесплатно для старта с 20 000 запросов. Один токен для Crawling API и каждого скрапера.