Скрапер LeetCode.
Задачи и решения, полностью отрендеренные.
Отправьте любой URL LeetCode и получите обратно полностью отрендеренный HTML через резидентные прокси со встроенной обработкой анти-бот-защиты.
Или получите структурированный JSON со скраперами leetcode-serp, leetcode-problem, leetcode-solutions и leetcode-solution.
Четыре скрапера LeetCode. Чистый JSON от каждого.
Четыре скрапера LeetCode, вводятся вживую. leetcode-solution берёт один разбор от сообщества с его блоками кода, leetcode-serp читает список задач, leetcode-problem возвращает отдельную задачу с её условием и стартовым кодом, а leetcode-solutions читает вкладку решений. Переключайте вкладки или наведите, чтобы приостановить и прочитать.
Один API, каждый уголок LeetCode.
Четыре специализированных скрапера покрывают важные страницы: список задач, отдельные задачи, вкладки решений и отдельные разборы. Crawling API рендерит каждую страницу в реальном браузере, достигает её через резидентные IP и выдаёт вам чистый HTML или JSON.
Весь каталог
leetcode-serp превращает страницу списка задач в JSON: totalProblems и problemCount, плюс каждая строка с её id, title, titleSlug, url, сложностью, процентом принятых решений, флагом premium и флагом ежедневного испытания.
Условия и стартовый код
leetcode-problem возвращает одну задачу с её условием в виде HTML и обычного текста, сложностью, категорией, тематическими тегами, подсказками, примерами тестов, стартовым сниппетом для каждого языка, который поддерживает LeetCode, похожими задачами и её счётчиками лайков, дизлайков и отправок.
Вкладка решений
leetcode-solutions возвращает вкладку решений в JSON, каждый пост с его id, title, url, именем и юзернеймом автора, датой публикации, тегами, голосами, просмотрами и числом комментариев.
Отдельные решения
Добавьте scraper=leetcode-solution чтобы вернуть один разбор с его автором, датой публикации, тегами, счётчиками вовлечённости, телом в виде HTML и обычного текста и каждым отрендеренным блоком кода с его языком.
140M резидентных IP
Каждый запрос ротирует резидентный IP по 30 регионам и преодолевает проверки бота автоматически. Ничего не нужно решать, ничего не нужно поддерживать.
Один API для каждой страницы
Crawling API работает с любым URL, поэтому один и тот же токен покрывает каждую задачу и решение LeetCode и всё остальное, что вы краулите. Смотреть живое демо.
Каждое поле задачи как чистый JSON.
Отправьте URL задачи с scraper=leetcode-problem и задача возвращается типизированным JSON, включая тематические теги и стартовый код. Замените на leetcode-serp, leetcode-solutions или leetcode-solution для списка задач и разборов от сообщества.
Задача
url · string id · string title · string titleSlug · string
Условие
description · string descriptionHtml · string hints · array exampleTestcases · array
Темы и код
topicTags[].name · string topicTags[].slug · string codeSnippets[].languageSlug · string codeSnippets[].code · string
Вовлечённость
likes · number dislikes · number submissionCount · number acceptanceRate · string
Похожие
similarQuestions[] · array officialSolution.available · boolean officialSolution.hasVideo · boolean solutionsUrl · string
От URL до данных за один вызов.
Каждый запрос к LeetCode проходит один и тот же путь. Вы отправляете URL, мы управляем всем остальным.
Отправьте URL
Передайте любой публичный URL LeetCode с вашим токеном: список задач, задачу, вкладку решений или отдельный разбор.
Ротируйте прокси
Резидентный IP и регион, которые чисто достигают сайта, из 140M IP по 30 регионам.
Отрендерьте страницу
Реальный браузер загружает страницу, чтобы таблица задач, панель условия и тело решения отрендерились до захвата.
Преодолейте анти-бот
Проверки бота и лимиты частоты сайта обрабатываются автоматически. Ничего не нужно решать, ничего не нужно поддерживать.
Верните HTML или JSON
Возвращается полностью отрендеренный HTML или типизированный JSON, когда вы добавляете leetcode-serp, leetcode-problem, leetcode-solutions или leetcode-solution.
Что команды строят на данных LeetCode.
Индексация списка задач
Проходите список задач страница за страницей, чтобы построить поисковый индекс каждой задачи с её id, slug, сложностью, процентом принятых решений и флагом premium.
Инструменты подготовки к собеседованиям
Извлекайте условия, подсказки, примеры тестов и стартовые сниппеты, чтобы питать приложения для практики, колоды интервальных повторений и внутренние программы подготовки.
Оценка моделей и агентов
Собирайте условия задач с их примерами тестов и эталонными разборами как оценочный набор бенчмарков для моделей генерации кода.
Анализ решений и паттернов
Собирайте вкладки решений и отдельные разборы, чтобы увидеть, к каким подходам, языкам и структурам данных сообщество реально сходится.
Отслеживание сложности и популярности
Отслеживайте проценты принятых решений, лайки, дизлайки, число отправок, голоса и просмотры во времени, чтобы видеть, какие задачи и разборы набирают популярность.
Любой URL, один API
Краульте список задач, задачи, вкладки решений и отдельные разборы, плюс любой другой сайт, который вам нужен.
Полезно знать при скрапинге LeetCode.
HTML по умолчанию, JSON по запросу
Вы получаете полностью отрендеренный HTML. Добавьте scraper=leetcode-serp, leetcode-problem, leetcode-solutions или leetcode-solution для распарсенного JSON или парсите HTML сами.
Ежедневное испытание - это лишняя строка
LeetCode закрепляет ежедневное испытание над таблицей, поэтому полная страница возвращается на одну строку больше размера страницы. Это единственная строка, где isDailyQuestion равен true, поэтому фильтруйте по этому флагу, а не по позиции.
Premium-задачи возвращают только метаданные
Premium-задача сохраняет свои идентификационные поля, isPremium и тематические теги, но условие и счётчики находятся за пейволом и возвращаются пустыми. Проверяйте isPremium, прежде чем считать пустой description ошибкой парсинга.
Счётчики приходят как отображаются
LeetCode сокращает на странице всё, что больше тысячи, поэтому 11.9K разворачивается обратно в 11900. Значение несёт точность страницы, а не точную цифру.
Создано для краулинга LeetCode в масштабе.
Crawling API работает на той же сети, что обслуживает более 46 000 платящих клиентов и 70 000 разработчиков. Никаких прокси для покупки, никаких браузеров для запуска, ничего не нужно патчить, когда сайт меняется.
Один токен, официальные SDK для Python, Node и Ruby и сеть с аптаймом 99,99% под капотом.
Вопросы о скрапинге LeetCode.
Начните скрапить LeetCode.
Забудьте о прокси и лимитах частоты.
Бесплатно для старта с 20 000 запросов. Один токен для Crawling API и каждого скрапера.