← Πίσω στο Γραφείο Νεκρολογιών

Αυτοματοποίηση αναζήτησης ληγμένων domains με Python

Δημοσιεύτηκε από Peter Nagy · Με τη βοήθεια AI · 8 Αυγούστου 2026 · 5 λεπτά ανάγνωσης

Αυτοματοποίηση αναζήτησης ληγμένων domains σημαίνει ότι αντικαθιστάς το χειροκίνητο τσεκάρισμα λιστών με ένα Python script που παίρνει δεδομένα από drop lists, τα φιλτράρει με βάση μετρικές και σε ειδοποιεί. Θα χρησιμοποιήσεις requests, BeautifulSoup και ένα απλό cron job. Δεν είναι τίποτα φανταχτερό, αλλά μετατρέπει ώρες σε λεπτά. Κι αν βρεις ένα άχρηστο domain, μπορείς πάντα να το θάψεις αργότερα.

Τι ακριβώς κάνει η αυτοματοποιημένη αναζήτηση ληγμένων domains;

Μετατρέπει μια βαρετή, επαναλαμβανόμενη δουλειά σε ένα script που το στήνεις και το ξεχνάς. Γράφεις Python κώδικα που κατεβάζει λίστες ληγμένων domains από δημόσιες πηγές, ελέγχει κάθε όνομα με βάση τους κανόνες σου και σου στέλνει μήνυμα όταν βρει κάτι που ταιριάζει. Τέλος το ξύπνημα στις 3 τα ξημερώματα για να δεις αν έπεσε επιτέλους εκείνο το 4-γράμματο .io.

Ο βασικός βρόχος είναι απλός: πάρε δεδομένα, φιλτράρισε, ειδοποίησε. Μπορείς να τον τρέξεις σε ένα φτηνό VPS ή στο δικό σου μηχάνημα με ένα cron job. Το όλο πράγμα φτιάχνεται σε ένα απόγευμα, ακόμα κι αν δεν είσαι επαγγελματίας προγραμματιστής.

Τι χρειάζεσαι πριν γράψεις το script;

Λίγα βασικά. Θέλεις Python 3.8 ή νεότερη εγκατεστημένη, συν έναν επεξεργαστή κειμένου. Θα χρειαστείς επίσης έναν δωρεάν λογαριασμό σε κάποια υπηρεσία API για domains, όπως το WhoisXMLAPI ή το RDAP, για να ελέγχεις ημερομηνίες εγγραφής. Μηδέν ευρώ για αυτό το βήμα, εκτός αν θες να πληρώσεις για περισσότερα requests.

Χρειάζεσαι επίσης ένα ξεκάθαρο φίλτρο. Να ξέρεις τι ψάχνεις: αριθμό λέξεων, μήκος, κατάληξη, backlinks ή μια συγκεκριμένη θεματική. Γράψ' το πριν αρχίσεις να κωδικοποιείς, αλλιώς θα καταλήξεις με ένα script που σε ειδοποιεί για κάθε τυχαίο domain στο ίντερνετ.

Βήμα 1: Πώς κατεβάζεις λίστες ληγμένων domains;

Ξεκίνα με δημόσιες drop lists. Υπηρεσίες όπως το ExpiredDomains.net και το NameJet δημοσιεύουν καθημερινές λίστες, αν και δεν είναι πάντα εύκολο να τις κάνεις scrape. Χρησιμοποίησε requests και BeautifulSoup για να τραβήξεις το HTML και να αναλύσεις τις γραμμές του πίνακα.

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")

Αυτό σου δίνει την ακατέργαστη σελίδα. Μετά εξάγεις τα ονόματα domains από τον πίνακα. Οι περισσότερες λίστες έχουν παρόμοια δομή, οπότε με λίγα find_all θα τα καταφέρεις. Να είσαι ευγενικός με τα rate limits, αλλιώς θα αποκλειστείς.

Βήμα 2: Πώς φιλτράρεις domains με Python;

Τα φίλτρα είναι εκεί που γίνεται η μαγεία. Γράψε μια συνάρτηση που παίρνει ένα domain και επιστρέφει True ή False με βάση τους κανόνες σου. Για παράδειγμα, μπορεί να θες μόνο .com domains με ακριβώς 6 γράμματα και χωρίς παύλες.

def is_worth_checking(domain):
    name, ext = domain.split(".")
    return ext == "com" and len(name) == 6 and "-" not in name

Μπορείς επίσης να φιλτράρεις με λίστες λέξεων-κλειδιών. Αν ψάχνεις domains γυμναστικής, κράτα μια λίστα με σχετικές λέξεις και έλεγξε αν εμφανίζεται καμία. Χρησιμοποίησε re για regex αν χρειάζεσαι πιο περίπλοκα μοτίβα.

Βήμα 3: Πώς ελέγχεις διαθεσιμότητα και μετρικές;

Μόλις έχεις μια φιλτραρισμένη λίστα, πρέπει να μάθεις αν το domain όντως λήγει. Χρησιμοποίησε RDAP για να ελέγξεις την κατάσταση εγγραφής. Η βιβλιοθήκη rdap το κάνει εύκολο.

import rdap

def check_status(domain):
    data = rdap.query(domain)
    return data.get("status", [])

Αν η κατάσταση περιλαμβάνει "pending delete" ή "redemption period", τότε πιθανότατα λήγει. Μπορείς επίσης να ελέγξεις backlinks με ένα δωρεάν API όπως το Open PageRank, αν και θα χρειαστείς ένα κλειδί API. Κράτα τους ελέγχους ελαφριούς, γιατί πολλά requests θα σε επιβραδύνουν.

Βήμα 4: Πώς προγραμματίζεις το script να τρέχει αυτόματα;

Χρησιμοποίησε cron σε Linux ή Task Scheduler σε Windows. Τρέξε το script μία φορά τη μέρα, ή κάθε λίγες ώρες αν κυνηγάς hot drops. Μια απλή γραμμή cron είναι:

0 6 * * * cd /path/to/script && python3 hunt.py

Αυτό το τρέχει κάθε πρωί στις 6. Θα έχεις αποτελέσματα πριν από την καθημερινή βιασύνη. Μπορείς επίσης να χρησιμοποιήσεις τη βιβλιοθήκη schedule αν προτιμάς να τα κρατήσεις όλα σε Python.

Βήμα 5: Πώς λαμβάνεις ειδοποιήσεις όταν βρεθεί κάτι;

Email, Telegram ή Slack. Το πιο εύκολο είναι το Telegram, γιατί μπορείς να στείλεις μήνυμα με ένα απλό POST request. Φτιάξε ένα bot, βρες το chat ID και χρησιμοποίησε requests.post για να στείλεις μήνυμα όταν το φίλτρο σου βρει κάτι.

import requests

def send_alert(domain):
    token = "YOUR_BOT_TOKEN"
    chat_id = "YOUR_CHAT_ID"
    text = f"Found: {domain}"
    url = f"https://api.telegram.org/bot{token}/sendMessage"
    requests.post(url, data={"chat_id": chat_id, "text": text})

Τώρα λαμβάνεις ειδοποιήσεις στο κινητό σου χωρίς να αγγίζεις το script. Απλά θυμήσου να κρατήσεις το bot token μυστικό.

Βήμα 6: Πώς διαχειρίζεσαι τα αποτελέσματα και αποφασίζεις τι να αγοράσεις;

Όταν έρθει η ειδοποίηση, πρέπει ακόμα να κάνεις χειροκίνητους ελέγχους. Χρησιμοποίησε έναν registrar όπως το Namecheap ή το GoDaddy για να δεις την ακριβή τιμή, και έλεγξε το Wayback Machine για παλαιότερο περιεχόμενο. Δεν αξίζει κάθε ληγμένο domain το κόστος εγγραφής.

Αν αγοράσεις ένα και αποδειχτεί άχρηστο, μπορείς να θάψεις το νεκρό project σου για ένα δολάριο. Είναι φτηνός τρόπος να το αφήσεις. Κι αν ψάχνεις έμπνευση ή ευκαιρία, ξεφύλλισε το νεκροταφείο για να δεις τι έχουν εγκαταλείψει άλλοι.

Τι μπορεί να πάει στραβά με την αυτοματοποιημένη αναζήτηση;

Πολλά. Το script σου μπορεί να σπάσει όταν η ιστοσελίδα αλλάξει την HTML δομή της. Μπορεί να φας rate limit ή να αποκλειστεί η IP σου. Μπορεί να φιλτράρεις πολύ επιθετικά και να χάσεις καλά ονόματα, ή πολύ χαλαρά και να πνιγείς σε άχρηστα.

Επίσης, η αγορά domains κινείται γρήγορα. Ένα όνομα που φαίνεται ελεύθερο μπορεί να το κατοχυρώσει κάποιος άλλος πριν τρέξει το cron job σου. Αυτό είναι φυσιολογικό. Βάλε retry ή αναμονή, και μην κολλάς σε κανένα domain.

Χρειάζεσαι πραγματικά να το αυτοματοποιήσεις;

Αν ελέγχεις drops μία φορά την εβδομάδα, όχι. Αλλά αν ανανεώνεις λίστες καθημερινά, ένα script σου εξοικονομεί ώρες. Σου επιτρέπει επίσης να δράσεις πιο γρήγορα όταν εμφανιστεί ένα καλό όνομα. Η ταχύτητα μετράει στο κυνήγι ληγμένων domains, γιατί τα καλά ονόματα εξαφανίζονται μέσα σε λεπτά.

Το μειονέκτημα είναι ότι η αυτοματοποίηση μπορεί να σε κάνει να νομίζεις ότι είσαι παραγωγικός. Δεν είσαι. Απλά φιλτράρεις πιο γρήγορα. Η πραγματική δουλειά είναι ακόμα στο χειροκίνητο τσεκάρισμα.

Από εδώ και πέρα;

Ξεκίνα μικρά. Διάλεξε μία πηγή, ένα φίλτρο και μία μέθοδο ειδοποίησης. Κάνε αυτό να δουλέψει πριν προσθέσεις πολυπλοκότητα. Μετά επέκτεινε σε περισσότερες πηγές ή φίλτρα. Το script δεν χρειάζεται να είναι τέλειο, απλά να τρέχει.

Κι αν καταλήξεις με ένα domain που δεν θες, μην το αφήσεις να σαπίσει. Θάψ' το στο dead.domains και άσε κάποιον άλλο να του δώσει δεύτερη ζωή. Αυτός είναι ο κύκλος της ψηφιακής ιδιοκτησίας, και είναι περίεργα ικανοποιητικός.

Ρίξε μια ματιά στο dead.domains για να δεις τι έχει ήδη θαφτεί.

Συχνές Ερωτήσεις

Είναι νόμιμο να κάνω scrape λίστες ληγμένων domains;

Ναι, αρκεί να σέβεσαι το robots.txt και τα rate limits. Οι δημόσιες λίστες είναι για προβολή, αλλά το πολύ γρήγορο scraping μπορεί να σε αποκλείσει. Χρησιμοποίησε λογικές καθυστερήσεις και σωστό user-agent. Αν ένα site έχει επί πληρωμή API, σκέψου να το χρησιμοποιήσεις για να αποφύγεις νομικά μπερδέματα.

Ποια είναι η καλύτερη Python βιβλιοθήκη για ανάλυση HTML;

Το BeautifulSoup είναι η πιο κοινή επιλογή γιατί είναι εύκολο στην εκμάθηση και δουλεύει καλά με ακατάστατο HTML. Για πιο περίπλοκη ανάλυση, μπορείς να χρησιμοποιήσεις lxml ή Scrapy. Ξεκίνα με BeautifulSoup και άλλαξε μόνο αν φτάσεις σε όρια απόδοσης.

Πόσο συχνά πρέπει να τρέχω το script μου για ληγμένα domains;

Μία φορά τη μέρα είναι συνήθως αρκετή για τις περισσότερες θεματικές. Αν κυνηγάς υψηλής αξίας drops, τρέξε το κάθε λίγες ώρες. Να θυμάσαι ότι πιο συχνά τρεξίματα αυξάνουν την πιθανότητα rate limit, οπότε ισορρόπησε ταχύτητα με ασφάλεια.

Μπορώ να αυτοματοποιήσω όλη τη διαδικασία αγοράς;

Μερικώς. Μπορείς να αυτοματοποιήσεις τον έλεγχο διαθεσιμότητας και ακόμα και την προπαραγγελία, αλλά η πραγματική εγγραφή συνήθως απαιτεί χειροκίνητη επιβεβαίωση. Κάποιοι registrars προσφέρουν APIs για αυτοματοποιημένες αγορές, αλλά συχνά έχουν ελάχιστα υπόλοιπα ή απαιτούν έγκριση. Μην περιμένεις μια εντελώς αυτόνομη διαδικασία.

Τι κάνω αν το script μου σταματήσει να δουλεύει;

Πρώτα έλεγξε την HTML δομή της ιστοσελίδας. Τα sites αλλάζουν συχνά layouts, οπότε οι επιλογείς σου μπορεί να σπάσουν. Πρόσθεσε διαχείριση σφαλμάτων στο script σου ώστε να καταγράφει το πρόβλημα και να σε ειδοποιεί. Μετά ενημέρωσε τους επιλογείς και ξανατρέξε το. Είναι μια φυσιολογική εργασία συντήρησης.