Senza KYC — nessun documento d'identità, nessun selfie, nessun documento. Paga in criptovalute: BTC, USDT, USDC, ETH, SOL, LTC
Lingua: Italiano
Ottieni una chiave API

Docs · curl · jq · PowerShell

SERP API con curl e jq: ricette di una riga

Il modo più veloce per vedere cosa restituisce l'API è un terminale. Queste ricette stampano esattamente una cosa ciascuna: link, domande, fonti o attività locali. Funzionano in bash e zsh; una versione PowerShell chiude la pagina.

Ultimo aggiornamento: · 4 min di lettura

Risposta rapida

Come interrogo una SERP API con curl?

Esegui curl -sG "https://serpcrypto.com/api/v1/search" -H "Authorization: Bearer $KEY" --data-urlencode "q=your query" e passa il JSON a jq. Con SerpCrypto, ogni ricerca riuscita costa 1 credito, a partire da 0,30 USD/1K ricerche, e gli errori sono gratuiti. -G trasforma i flag dei dati in una query string. I crediti si pagano in criptovalute, senza KYC.

Quali flag di curl contano qui?

Imposta la chiave una volta per shell con export SERPCRYPTO_API_KEY=…. Installa jq dal tuo package manager se manca.

FlagPerché
-sSilenzioso: nessuna barra di avanzamento mescolata al JSON.
-GInvia i valori -d e --data-urlencode come query string su una richiesta GET.
--data-urlencodeCodifica spazi, virgolette e accenti in q e location.
-H "Authorization: Bearer …"La tua chiave API. Tienila in una variabile d'ambiente.
-w '%{http_code}'Stampa lo status HTTP, utile quando una chiamata fallisce.

Chiedi i risultati organici e lascia che jq stampi la posizione e il link di ciascuno, separati da una tabulazione. Il formato []? non stampa nulla invece di fallire quando un blocco è assente, il che mantiene gli script silenziosi sulle pagine insolite.

Primi 10 link
# Top 10 organic links, one per line
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=kubernetes cost monitoring" -d gl=us -d hl=en \
  | jq -r '.organic_results[]? | "\(.position)\t\(.link)"'

Come elenco le domande di People Also Ask?

Leggi people_also_ask[].question. Le domande seguono la lingua in hl e cambiano con il paese in gl, quindi esegui la stessa query in ogni mercato per cui scrivi. I team di contenuti incollano questa lista direttamente in un brief.

People Also Ask
# People Also Ask questions, ready for a content brief
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=how to brew cold brew" -d gl=gb -d hl=en \
  | jq -r '.people_also_ask[]?.question'

Come vedo quali fonti cita un AI Overview?

Leggi ai_overview.references. Il blocco esiste solo quando Google mostra un AI Overview per quella query e quel luogo, quindi la ricetta stampa un messaggio chiaro altrimenti. Monitorare queste fonti nel tempo mostra se le tue pagine vengono citate nelle risposte generate da Google.

Fonti degli AI Overview
# Sources cited by the AI Overview, if the page shows one
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=what is a heat pump" -d gl=us -d hl=en \
  | jq -r 'if .ai_overview then .ai_overview.references[] | "\(.index)\t\(.source)\t\(.link)" else "no AI Overview for this query" end'

Come ottengo il local pack e la lista di Maps?

Una ricerca web con location restituisce il local pack mostrato nella pagina dei risultati, di solito alcune attività. engine=google_maps restituisce la lista più lunga di Maps con indirizzo, valutazione e numero di recensioni, che @tsv trasforma in righe per un foglio di calcolo. Entrambe costano 1 credito ciascuna.

Local pack, poi Google Maps
# Local pack in a city, then the full Maps list for the same query
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=vegan restaurant" \
  --data-urlencode "location=Toronto, Ontario, Canada" -d gl=ca -d hl=en \
  | jq -r '.local_results[]? | "\(.position)\t\(.title)\t\(.rating // "-")"'

curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  -d engine=google_maps --data-urlencode "q=vegan restaurant Toronto" -d gl=ca -d hl=en \
  | jq -r '.local_results[]? | [.title, .address, .rating, .reviews] | @tsv'

Come vedo l'errore quando una chiamata fallisce?

Aggiungi -w '\nHTTP %{http_code}\n' per stampare lo status dopo il body. Il body di un errore è un piccolo JSON con code e message; la pagina degli errori elenca tutti e sei i codici. Il secondo comando legge i tuoi crediti, ed è gratuito.

Codice di stato e crediti
# Print the body, then the HTTP status on its own line
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=test" -w '\nHTTP %{http_code}\n'

# Credits left (free call)
curl -s "https://serpcrypto.com/api/v1/credits" -H "Authorization: Bearer $SERPCRYPTO_API_KEY" | jq .

Qual è l'equivalente PowerShell su Windows?

Invoke-RestMethod invia la richiesta e converte il JSON in oggetti, quindi non ti serve jq. Passa i parametri come hashtable in -Body: con una richiesta GET, PowerShell li codifica nella query string. Poi Format-Table stampa posizioni, titoli e link.

PowerShell
# Windows PowerShell 5.1 or PowerShell 7
$headers = @{ Authorization = "Bearer $env:SERPCRYPTO_API_KEY" }
$query = @{ q = "kubernetes cost monitoring"; gl = "us"; hl = "en" }
$data = Invoke-RestMethod -Uri "https://serpcrypto.com/api/v1/search" -Headers $headers -Body $query -Method Get
$data.organic_results | Select-Object position, title, link | Format-Table -AutoSize

Quando dovrei passare da curl al codice?

Non appena ripeti un comando con una lista di keyword. Un loop nella shell funziona per qualche decina di ricerche, ma retry, parallelismo e archiviazione sono più facili in Python o Node.js. Le richieste sono le stesse, quindi una ricetta testata qui si trasferisce senza modifiche. Ogni ricerca resta a 1 credito, a 0,75 USD/1K ricerche sul pack 10.000 ricerche.

domande su curl

Perché la mia query restituisce un errore 400 in curl?

Di solito perché q è stato inviato con -d e contiene un carattere che va codificato. Usa --data-urlencode "q=…" per la query e per location; i codici semplici come gl=us possono restare con -d.

Posso salvare il JSON completo in un file?

Sì: aggiungi -o result.json invece di inviare l'output a jq. Salvare le risposte grezze ti permette di rielaborarle in seguito senza pagare di nuovo la ricerca.

curl su Windows funziona allo stesso modo?

Windows 10 e 11 includono curl.exe, e i flag sono gli stessi. Le virgolette funzionano diversamente in cmd.exe, quindi PowerShell con Invoke-RestMethod è di solito più semplice lì.

Da 0,30 USD/1K ricerche · senza KYC

Ottieni una chiave API