ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment migrer hors de la limite de 50 domaines de Google CSE
Tutoriel

Comment migrer hors de la limite de 50 domaines de Google CSE

Google CSE plafonne la recherche gratuite à 50 domaines. Passez à une API de recherche intégrale qui couvre tous les domaines sans restrictions pour $0.005/requête.

Obtenez une clé API gratuiteDocumentation API

Le niveau gratuit de Google Custom Search Engine vous limite à 50 domaines spécifiques. Si votre application doit rechercher l'ensemble du web, vous devez soit payer Google $5 pour 1,000 requêtes, soit changer de fournisseur. Ce tutoriel migre une configuration Google CSE de 50 domaines vers Scavio, qui recherche tout le web sans plafond de domaines à $0.005 par requête. La migration préserve votre format de résultat existant, de sorte que le code en aval ne nécessite aucune modification.

Prérequis

  • Python 3.9+ ou Node.js 18+
  • Votre configuration Google CSE actuelle (CX ID, liste de domaines)
  • Une clé API Scavio provenant de scavio.dev

Parcours

Étape 1: Exportez votre liste de domaines Google CSE

Extrayez les domaines de votre configuration Google CSE. Ceux-ci deviennent des filtres de site facultatifs dans Scavio si vous souhaitez limiter la portée.

Python
# Your 50 Google CSE domains (example)
google_cse_domains = [
    'docs.python.org', 'stackoverflow.com', 'github.com',
    'developer.mozilla.org', 'reactjs.org', 'nextjs.org',
    'vuejs.org', 'angular.io', 'nodejs.org', 'npmjs.com',
    # ... up to 50 domains
]

print(f'Migrating {len(google_cse_domains)} domains from Google CSE')
print(f'Google CSE: limited to these {len(google_cse_domains)} domains')
print(f'Scavio: searches entire web (no domain cap)')
print(f'Cost comparison:')
print(f'  Google CSE paid: $5.00 per 1,000 queries')
print(f'  Scavio: $5.00 per 1,000 queries ($0.005 each)')
print(f'  Scavio free: 250 queries/month included')

Étape 2: Construisez l'adaptateur de migration

Créez une fonction avec la même interface que vos appels Google CSE mais en utilisant Scavio. Restreignez éventuellement à votre liste de domaines à l'aide de requêtes site:.

Python
import requests, os

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']

def search(query: str, num: int = 10, restrict_domains: list = None) -> list:
    """Drop-in replacement for Google CSE. Same return shape."""
    search_query = query
    if restrict_domains:
        # Use site: operator to limit to specific domains
        sites = ' OR '.join(f'site:{d}' for d in restrict_domains[:5])
        search_query = f'{query} ({sites})'
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json'},
        json={'query': search_query, 'country_code': 'us', 'num_results': num})
    resp.raise_for_status()
    # Return in Google CSE items[] format
    return [{'title': r['title'], 'link': r['link'],
             'snippet': r.get('snippet', ''),
             'displayLink': r['link'].split('/')[2] if '/' in r['link'] else ''}
            for r in resp.json().get('organic_results', [])]

# Full web search (no domain limit)
results = search('python asyncio tutorial', num=5)
print(f'Full web: {len(results)} results')
for r in results:
    print(f'  {r["displayLink"]}: {r["title"][:50]}')

Étape 3: Validez la migration avec des tests de comparaison

Exécutez les mêmes requêtes via les deux fournisseurs pour vous assurer que la qualité des résultats est équivalente avant de basculer complètement.

Python
queries = ['python asyncio', 'react hooks tutorial', 'docker compose networking']

for q in queries:
    # With domain restriction (mimics old Google CSE behavior)
    restricted = search(q, num=3, restrict_domains=['docs.python.org', 'stackoverflow.com', 'github.com'])
    # Full web (new capability)
    full = search(q, num=3)
    print(f'Query: {q}')
    print(f'  Restricted ({len(restricted)} results): {restricted[0]["displayLink"] if restricted else "none"}')
    print(f'  Full web   ({len(full)} results): {full[0]["displayLink"] if full else "none"}')
    print()

Exemple Python

Python
import requests, os

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']

def search(query, num=10):
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json'},
        json={'query': query, 'country_code': 'us', 'num_results': num})
    return [{'title': r['title'], 'link': r['link'], 'snippet': r.get('snippet', '')}
            for r in resp.json().get('organic_results', [])]

results = search('python asyncio tutorial')
for r in results[:5]:
    print(f'{r["title"]}: {r["link"]}')

Exemple JavaScript

JavaScript
const SCAVIO_KEY = process.env.SCAVIO_API_KEY;

async function search(query, num = 10) {
  const resp = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query, country_code: 'us', num_results: num })
  });
  const data = await resp.json();
  return (data.organic_results || []).map(r => ({
    title: r.title, link: r.link, snippet: r.snippet || ''
  }));
}

search('python asyncio tutorial').then(r => r.slice(0, 5).forEach(x => console.log(x.title)));

Sortie attendue

JSON
Full web: 10 results
  docs.python.org: Python asyncio -- Asynchronous I/O
  realpython.com: Async IO in Python: A Complete Walkt
  stackoverflow.com: How to use asyncio in Python 3

Query: python asyncio
  Restricted (3 results): docs.python.org
  Full web   (3 results): docs.python.org

Cost: $0.005/query, no domain cap

Tutoriels associés

  • Comment créer un système de secours après la fin du niveau gratuit Google CSE
  • Comment calculer le coût réel par requête de recherche d'agent
  • Comment construire un routeur de coût pour le fournisseur de recherche le moins cher

Questions fréquentes

La plupart des développeurs terminent ce tutoriel en 15 à 30 minutes. Vous aurez besoin d'une clé API Scavio (l'offre gratuite suffit) et d'un environnement Python ou JavaScript fonctionnel.

Python 3.9+ ou Node.js 18+. Votre configuration Google CSE actuelle (CX ID, liste de domaines). Une clé API Scavio provenant de scavio.dev. Une clé API Scavio vous donne 50 crédits gratuits à l'inscription.

Oui. L'offre gratuite comprend 50 crédits à l'inscription, ce qui est largement suffisant pour terminer ce tutoriel et prototyper une solution fonctionnelle.

Scavio dispose d'un package natif LangChain (langchain-scavio), d'un serveur MCP et d'une API REST simple qui fonctionne avec tout client HTTP. Ce tutoriel utilise the raw REST API, mais vous pouvez l'adapter à votre framework de prédilection.

Ressources connexes

Workflow

Migrer l'intégration Google CSE vers l'API de recherche

Read more
Best Of

Meilleures API de remplacement pour Google Custom Search Engine en 2026

Read more
Best Of

Meilleures alternatives à Google CSE : Mise à jour mai 2026

Read more
Solution

Remplacez Google Programmable Search Engine par l'API Scavio

Read more
Solution

Migrez hors de Google CSE avant janvier 2027

Read more
Workflow

Workflow de checklist de migration Google CSE

Read more

Commencer

Google CSE plafonne la recherche gratuite à 50 domaines. Passez à une API de recherche intégrale qui couvre tous les domaines sans restrictions pour $0.005/requête.

Obtenez une clé API gratuiteLire la documentation
ScavioScavio

API de recherche en temps réel pour agents IA. Recherchez sur toutes les plateformes, pas seulement Google.

Produit

  • Fonctionnalités
  • Tarifs
  • Tableau de bord
  • Affiliés

Développeurs

  • Documentation
  • Référence API
  • Démarrage rapide
  • Intégration MCP
  • SDK Python

Alternatives

  • Alternative à Tavily
  • Alternative à SerpAPI
  • Alternative à Firecrawl
  • Alternative à Exa

Outils

  • Formateur JSON
  • cURL vers code
  • Compteur de jetons
  • Tous les outils

© 2026 Scavio. Tous droits réservés.

Featured on TAAFT
Conditions d'utilisationPolitique de confidentialité