Automatizza la caccia ai domini scaduti con Python
Pubblicato da Peter Nagy · Con l'aiuto dell'IA · 8 agosto 2026 · 5 min di lettura
La caccia automatizzata ai domini scaduti significa sostituire l'aggiornamento manuale delle liste con uno script Python che interroga le drop list, applica filtri e ti invia notifiche. Userai requests, BeautifulSoup e un semplice cron job. Niente di sofisticato, ma trasforma ore in minuti. E quando trovi un bidone, puoi sempre seppellirlo dopo.
Cosa fa esattamente la caccia automatizzata ai domini scaduti?
Trasforma un compito noioso e ripetitivo in uno script che imposti e dimentichi. Scrivi codice Python che recupera le liste di domini scaduti da fonti pubbliche, controlla ogni nome in base alle tue regole e ti invia un messaggio quando trova una corrispondenza. Niente più sveglie alle 3 del mattino per vedere se quel .io di 4 lettere è finalmente caduto.
Il ciclo principale è semplice: recupera, filtra, avvisa. Puoi eseguirlo su un VPS economico o sul tuo PC con un cron job. Il tutto si costruisce in un pomeriggio, anche se non sei uno sviluppatore professionista.
Prerequisiti: cosa ti serve prima di scrivere lo script?
Qualche base. Ti serve Python 3.8 o superiore installato, più un editor di testo. Ti servirà anche un account gratuito a un servizio API per domini come WhoisXMLAPI o RDAP per controllare le date di registrazione. Budget zero per questo passaggio, a meno che tu non voglia pagare per limiti più alti.
Ti serve anche un filtro chiaro. Sappi cosa stai cercando: numero di parole, lunghezza, estensione, backlink o una nicchia specifica. Scrivilo prima di programmare, altrimenti ti ritroverai con uno script che ti avvisa per ogni dominio a caso su internet.
Passo 1: come recuperi le liste di domini scaduti?
Inizia con le drop list pubbliche. Servizi come ExpiredDomains.net e NameJet pubblicano liste giornaliere, anche se non sono sempre facili da raschiare. Usa requests e BeautifulSoup per scaricare l'HTML e analizzare le righe delle tabelle.
import requests
from bs4 import BeautifulSoup
url = "https://www.expireddomains.net/expired-domains/"
headers = {"User-Agent": "Mozilla/5.0"}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, "html.parser")
Così ottieni la pagina grezza. Poi estrai i nomi di dominio dalla tabella. La maggior parte delle liste usa una struttura simile, quindi bastano poche chiamate find_all. Sii educato con i limiti di richiesta, o verrai bloccato.
Passo 2: come filtri i domini con Python?
I filtri sono dove avviene la magia. Scrivi una funzione che prende un dominio e restituisce True o False in base alle tue regole. Per esempio, potresti volere solo domini .com con esattamente 6 lettere e nessun trattino.
def is_worth_checking(domain):
name, ext = domain.split(".")
return ext == "com" and len(name) == 6 and "-" not in name
Puoi anche filtrare per elenchi di parole chiave. Se cerchi domini fitness, tieni una lista di parole pertinenti e controlla se qualcuna compare. Usa re per espressioni regolari se ti servono schemi più complessi.
Passo 3: come controlli la disponibilità e le metriche del dominio?
Una volta ottenuta una lista filtrata, devi sapere se il dominio sta effettivamente scadendo. Usa RDAP per controllare lo stato di registrazione. La libreria rdap lo rende semplice.
import rdap
def check_status(domain):
data = rdap.query(domain)
return data.get("status", [])
Se lo stato include "pending delete" o "redemption period", probabilmente sta scadendo. Puoi anche controllare i backlink usando un'API gratuita come Open PageRank, anche se ti servirà una chiave API. Tieni i controlli leggeri, perché troppe richieste ti rallenteranno.
Passo 4: come programmi l'esecuzione automatica dello script?
Usa cron su Linux o Task Scheduler su Windows. Esegui lo script una volta al giorno, o ogni poche ore se cerchi drop caldi. Una semplice riga cron è così:
0 6 * * * cd /path/to/script && python3 hunt.py
Così viene eseguito ogni mattina alle 6. Riceverai i risultati prima della corsa quotidiana. Puoi anche usare la libreria schedule se preferisci tenere tutto in Python.
Passo 5: come ricevi avvisi quando viene trovata una corrispondenza?
Email, Telegram o Slack. Il più semplice è Telegram, perché puoi inviare un messaggio con una semplice richiesta POST. Crea un bot, ottieni l'ID chat e usa requests.post per inviare un messaggio quando il tuo filtro trova qualcosa.
import requests
def send_alert(domain):
token = "YOUR_BOT_TOKEN"
chat_id = "YOUR_CHAT_ID"
text = f"Trovato: {domain}"
url = f"https://api.telegram.org/bot{token}/sendMessage"
requests.post(url, data={"chat_id": chat_id, "text": text})
Ora ricevi notifiche sul telefono senza toccare lo script. Ricorda solo di tenere privato il token del bot.
Passo 6: come gestisci i risultati e decidi cosa comprare?
Quando arriva l'avviso, devi comunque fare controlli manuali. Usa un registrar come Namecheap o GoDaddy per vedere il prezzo esatto e controlla la Wayback Machine per i contenuti storici. Non tutti i domini scaduti valgono la tassa di registrazione.
Se ne compri uno e si rivela un bidone, puoi seppellire il tuo progetto morto per un dollaro. È un modo economico per lasciar andare. E se cerchi ispirazione o un affare, sfoglia il cimitero per vedere cosa altri hanno abbandonato.
Cosa può andare storto nella caccia automatizzata?
Molte cose. Il tuo script potrebbe rompersi quando il sito cambia la struttura HTML. Potresti essere limitato nelle richieste o bloccato dall'IP. Potresti filtrare in modo troppo aggressivo e perdere bei nomi, o troppo lassista e essere sommerso di spazzatura.
Inoltre, il mercato dei domini si muove veloce. Un nome che sembra libero potrebbe essere registrato da qualcun altro prima che il tuo cron job venga eseguito. È normale. Inserisci un tentativo o un'attesa, e non affezionarti a nessun singolo dominio.
Hai davvero bisogno di automatizzare tutto questo?
Se controlli le drop una volta a settimana, no. Ma se aggiorni le liste ogni giorno, uno script ti fa risparmiare ore. Ti permette anche di agire più velocemente quando appare un buon nome. La velocità conta nella caccia ai domini scaduti, perché i bei nomi spariscono in pochi minuti.
Lo svantaggio è che l'automazione può illuderti di essere produttivo. Non lo sei. Stai solo filtrando più velocemente. Il vero lavoro è ancora nella revisione manuale.
Dove andare da qui?
Inizia in piccolo. Scegli una fonte, un filtro e un metodo di avviso. Fallo funzionare prima di aggiungere complessità. Poi espandi con più fonti o più filtri. Lo script non deve essere perfetto, deve solo funzionare.
E se ti ritrovi con un dominio che non vuoi, non lasciarlo marcire. Seppelliscilo su dead.domains e lascia che qualcun altro gli dia una seconda vita. È il ciclo della proprietà digitale, ed è stranamente soddisfacente.
Vai su dead.domains per vedere cosa è già stato sepolto.
FAQ
È legale raschiare le liste di domini scaduti?
Sì, finché rispetti robots.txt e i limiti di richiesta. Le liste pubbliche sono fatte per essere visualizzate, ma raschiare troppo velocemente può farti bloccare. Usa ritardi ragionevoli e un user-agent appropriato. Se un sito ha un'API a pagamento, considera di usarla per evitare problemi legali.
Qual è la migliore libreria Python per analizzare HTML?
BeautifulSoup è la scelta più comune perché è facile da imparare e funziona bene con HTML disordinato. Per analisi più complesse, potresti usare lxml o Scrapy. Inizia con BeautifulSoup e passa ad altro solo quando raggiungi i limiti di prestazioni.
Ogni quanto dovrei eseguire il mio script per domini scaduti?
Una volta al giorno di solito basta per la maggior parte delle nicchie. Se cerchi drop di alto valore, eseguilo ogni poche ore. Tieni presente che esecuzioni più frequenti aumentano il rischio di essere limitato, quindi bilancia velocità e sicurezza.
Posso automatizzare l'intero processo di acquisto?
Parzialmente. Puoi automatizzare il controllo della disponibilità e persino il pre-ordine, ma la registrazione effettiva di solito richiede una conferma manuale. Alcuni registrar offrono API per acquisti automatici, ma spesso richiedono saldi minimi o approvazione. Non aspettarti un processo completamente automatico.
Cosa devo fare se il mio script smette di funzionare?
Prima controlla la struttura HTML del sito. I siti cambiano layout spesso, quindi i tuoi selettori potrebbero rompersi. Aggiungi gestione degli errori al tuo script in modo che registri il problema e ti avvisi. Poi aggiorna i selettori e riesegui. È una normale manutenzione.