Vai al contenuto principale
Attraverso l’endpoint /v1/maps di Olostep puoi ottenere tutti gli URL su un sito web. Questo è utile per la scoperta di contenuti, l’analisi della struttura del sito (ad esempio, SEO), o per decidere quali URL vuoi estrarre successivamente.
  • Ottieni tutti gli URL su un sito web (inclusi sitemaps e link scoperti)
  • Usa pattern speciali per includere/escludere percorsi (es. /blog/**)
  • Pagina risposte grandi con cursor (fino a 10MB per risposta)
  • Limita il volume con top_n
Per i dettagli sull’API, consulta la Riferimento API dell’Endpoint Mappa.

Installazione

pip install olostep
npm install olostep
# curl è disponibile di default su macOS, Linux e Windows
npm install node-fetch
pip install requests

Utilizzo

Invia una richiesta POST con l’url del sito web. Facoltativamente passa include_urls, exclude_urls (pattern glob), e top_n.
from olostep import Olostep

client = Olostep(api_key="YOUR_REAL_KEY")

sitemap = client.maps.create(url="https://docs.olostep.com")

for url in sitemap.urls():
    print(url)
import Olostep from 'olostep'

const client = new Olostep({ apiKey: 'YOUR_REAL_KEY' })

const map = await client.maps.create({ url: 'https://docs.olostep.com' })

for await (const url of map.urls()) {
  console.log(url)
}
curl -s -X POST "https://api.olostep.com/v1/maps" \
  -H "Authorization: Bearer $OLOSTEP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://docs.olostep.com"
  }'
const res = await fetch('https://api.olostep.com/v1/maps', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <YOUR_API_KEY>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ url: 'https://docs.olostep.com' })
})
console.log(await res.json())
import requests
import json

endpoint = "https://api.olostep.com/v1/maps"

payload = {
    "url": "https://docs.olostep.com"
}
headers = {
    "Authorization": "Bearer <YOUR_API_KEY>",
    "Content-Type": "application/json"
}

response = requests.post(endpoint, json=payload, headers=headers)
print(json.dumps(response.json(), indent=2))
Il tempo di risposta è tipicamente di pochi secondi ma può richiedere fino a 120 secondi per siti web più complessi. Può estrarre tutti gli URL da un sito web, inclusi i backlink e quelli non presenti nei Sitemaps. Puoi anche decidere i percorsi degli URL che vuoi includere o escludere dalla risposta. Di default l’endpoint restituisce circa 100k URL in una singola chiamata (massimo 10MB). Se la risposta include più dati, l’API restituisce un parametro cursor che può essere utilizzato per la paginazione e per ottenere gli URL successivi. Per maggiori dettagli consulta la Riferimento API. Questo endpoint è particolarmente utile quando hai bisogno di:
  • Scoprire tutte le pagine di contenuto su un sito web
  • Analizzare la struttura e la gerarchia del sito
  • Preparare URL per l’elaborazione in batch
  • Decidere quali URL specifici estrarre
Per un controllo più dettagliato sugli URL restituiti puoi usare i parametri include_urls e exclude_urls.

Esempio

Supponiamo che da www.brex.com tu voglia estrarre tutti gli URL che hanno i percorsi dopo /product/ ad esempio https://www.brex.com/product/api/no-code ma anche includere www.brex.com/product. Puoi usare il seguente codice:
from olostep import Olostep

client = Olostep(api_key="YOUR_REAL_KEY")

sitemap = client.maps.create(
    url="https://www.brex.com/",
    include_urls=["/product", "/product/**"],
    top_n=100000,
)

for url in sitemap.urls():
    print(url)
import Olostep from 'olostep'

const client = new Olostep({ apiKey: 'YOUR_REAL_KEY' })

const map = await client.maps.create({
  url: 'https://www.brex.com/',
  includeUrls: ['/product', '/product/**'],
  topN: 100000,
})

for await (const url of map.urls()) {
  console.log(url)
}
curl -s -X POST "https://api.olostep.com/v1/maps" \
  -H "Authorization: Bearer $OLOSTEP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://www.brex.com/",
    "include_urls": ["/product", "/product/**"],
    "top_n": 100000
  }'
const endpoint = 'https://api.olostep.com/v1/maps'

const res = await fetch(endpoint, {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <YOUR_API_KEY>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    url: 'https://www.brex.com/',
    include_urls: ['/product', '/product/**'],
    top_n: 100000
  })
})
console.log(await res.text())
import requests

endpoint = "https://api.olostep.com/v1/maps"

payload = {
    "url": "https://www.brex.com/",
    "include_urls": ["/product", "/product/**"],
    "top_n": 100000
}

headers = {
    "Authorization": "Bearer <YOUR_API_KEY>",
    "Content-Type": "application/json"
}

response = requests.post(endpoint, json=payload, headers=headers)

print(response.text)

Conclusione

L’endpoint delle mappe è uno strumento potente per la scoperta di contenuti e l’analisi del sito. Fornisce un elenco completo di URL su un sito web, permettendoti di estrarre contenuti da pagine specifiche o analizzare la struttura del sito. Questo endpoint è particolarmente utile per i professionisti SEO, i content marketer, gli agenti AI che devono analizzare il contenuto o la struttura del sito web.

Prezzi

La mappa costa 1 credito. Poi, per ogni 1000 URL extra restituiti nella risposta, viene addebitato un credito aggiuntivo.