crawlbaseDocs
Se connecter

Utilisation de l'API

Ajoutez &scraper=exercism-exercise à une requête Crawling API. Encodez en URL l'URL cible dans le paramètre url.

curl 'https://api.crawlbase.com/?token=YOUR_TOKEN' \
  --data-urlencode 'url=https://exercism.org/tracks/ruby/exercises/two-fer' \
  --data-urlencode 'scraper=exercism-exercise' -G
from crawlbase import CrawlingAPI

api = CrawlingAPI({'token': 'YOUR_TOKEN'})
res = api.get(
    'https://exercism.org/tracks/ruby/exercises/two-fer',
    {'scraper': 'exercism-exercise'}
)

import json
data = json.loads(res['body'])
const { CrawlingAPI } = require('crawlbase');
const api = new CrawlingAPI({ token: 'YOUR_TOKEN' });

const res = await api.get(
  'https://exercism.org/tracks/ruby/exercises/two-fer',
  { scraper: 'exercism-exercise' }
);
const data = JSON.parse(res.body);
require 'crawlbase'
api = Crawlbase::API.new(token: 'YOUR_TOKEN')

res = api.get('https://exercism.org/tracks/ruby/exercises/two-fer', scraper: 'exercism-exercise')
data = JSON.parse(res.body)

Exemple d'URL en entrée

N'importe quelle page de présentation d'un exercice Exercism fonctionne dans le paramètre url - la page située à /tracks/<track>/exercises/<slug>. Par exemple :

https://exercism.org/tracks/ruby/exercises/two-fer
https://exercism.org/tracks/python/exercises/leap
https://exercism.org/tracks/go/exercises/hello-world
https://exercism.org/tracks/rust/exercises/grains

Structure de la réponse

Corps de la réponse JSON. Les types de champs peuvent être null lorsque la page source omet la valeur.

url
string
URL de la page de l'exercice qui a été scrapée.
track
string | null
Slug de la piste lu depuis le chemin de l'URL (par exemple ruby), ou null lorsqu'il ne peut pas être déterminé.
slug
string | null
Slug de l'exercice lu depuis le chemin de l'URL (par exemple two-fer), ou null lorsqu'il ne peut pas être déterminé.
title
string | null
Titre affiché de l'exercice.
difficulty
string | null
Libellé de difficulté (par exemple easy, medium, hard).
instructions
string | null
Instructions complètes de l'exercice en texte brut, avec les espaces réduits.
instructionsHtml
string | null
Instructions complètes de l'exercice en HTML, préservant les titres, les blocs de code et les listes.

Exemple de réponse

{
  "url": "https://exercism.org/tracks/ruby/exercises/two-fer",
  "track": "ruby",
  "slug": "two-fer",
  "title": "Two Fer",
  "difficulty": "easy",
  "instructions": "Two Fer Two-fer is short for two for one. One for you and one for me. Given a name, return a string with the message: One for name, one for me. Where \"name\" is the given name. However, if the name is missing, return the string: One for you, one for me.",
  "instructionsHtml": "

Instructions

\n

Two-fer is short for two for one. One for you and one for me.

\n

Given a name, return a string with the message:

\n
One for name, one for me.
" }