Avtomatiziraj iskanje poteklih domen s Pythonom
Objavil Peter Nagy · S pomočjo UI · 8. avgust 2026 · 5 min branja
Avtomatizirano lovljenje poteklih domen pomenja zamenjavo ročnega osveževanja seznamov s Python skripto, ki preverja sezname padanja, filtrira po merilih in te opozori. Uporabiš requests, BeautifulSoup in preprosto cron opravilo. Ni modno, ampak spremeni ure v minute. In kadar najdeš mulo, ga lahko pozneje zakopješ.
Kaj točno naredi avtomatizirano lovljenje poteklih domen?
Spremeni dolgočasno ponavljajoče opravilo v skripto, ki jo nastaviš in pozabiš. Napišeš Python kodo, ki dobi sezname poteklih domen iz javnih virov, preveri vsako ime po tvojih pravilih in ti pošlje sporočilo, kadar kej ujema. Več ni treba vstajati ob 3h zjotraj, da vidiš, če je štirčrkovni .io končno padel.
Osrednja zanka je preprosta: dobi, filtriraj, opozori. Lahko jo poženeš na poceni VPS ali na svojem računalniku s cron opravilom. Celoto lahko zgradiš v enem popoldnevu, četudi nisi profesionalni razdvijalec.
Kaj rabiš preden napišeš skripto?
Nekaj osnovnega. Rabiš Python 3.8 ali novejši, plus urejevalnik besedila. Rabiš tudi brezplačen račun pri API storiitvi za domene, kot je WhoisXMLAPI ali RDAP, da preveriš datume registracije. Za ta korak proračunaj nič dolarjev, razen če hočeš večje meje hitrosti.
Rabiš tudi jasen filter. Vej, kaj iščeš: število besed, dolžino, končnico, povratne vezi ali specifično nišo. Zapiši preden začneš kodirati, drugače boš dobil skripto, ki te opozori o vsaki naključni domeni na internetu.
Korak 1: Kako dobiti sezname poteklih domen?
Začni z javnimi seznami padanja. Storitve kot ExpiredDomains.net in NameJet objavljujejo dnevne sezname, čeprav ni vedno lahko jih strgati. Uporabi requests in BeautifulSoup, da potegneš HTML in razdreš vrstice tabele.
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")
To ti dobi surovo stranico. Potem izlučiš imena domen iz tabele. Večina seznamov uporablja podobno strukturo, zato boš s nekaj find_all klicami prišel do tja. Bodi vljuden z mejami hitrosti, drugače boš blokiran.
Korak 2: Kako filtrirati domene s Pythonom?
Filtri so, kjer se naredi čarovnija. Napiši funkcijo, ki sprejme domeno in vrne True ali False glede na tvoja pravila. Na primer, hočeš le .com domene z točno 6 črkami in brez vezajev.
def is_worth_checking(domain):
name, ext = domain.split(".")
return ext == "com" and len(name) == 6 and "-" not in name
Lahko tudi filtriraš po seznamu ključnih besed. Če iščeš fitnes domene, hrani seznam ustreznih besed in preveri, če se katera pojavi. Uporabi re za regex ujemanje, če rabiš bolj zapletene vzorce.
Korak 3: Kako preveriti razpoložljivost in merila domene?
Ko imaš filtriran seznam, rabiš vedeti, če domena resnično poteče. Uporabi RDAP, da preveriš stanje registracije. Knjižnica rdap to naredi lahko.
import rdap
def check_status(domain):
data = rdap.query(domain)
return data.get("status", [])
Če stanje vključuje "pending delete" ali "redemption period", verjetno poteče. Lahko tudi preveriš povratne vezi s brezplačnim API-jem, kot je Open PageRank, čeprav boš rabil API ključ. Hrani preverjanja lahka, ker preveč zahtevov te bo upočasnilo.
Korak 4: Kako načrtati skripto, da teče avtomatično?
Uporabi cron na Linuxu ali Task Scheduler na Windowsu. Poženi skripto enkrat na dan ali vsakih nekaj ur, če loviš vroče padanje. Preprosta cron vrstica izgleda takole:
0 6 * * * cd /path/to/script && python3 hunt.py
To teče vsako zjutrej ob 6h. Rezultate boš dobil preden dnevne gnječe. Lahko tudi uporabiš knjižnico schedule, če hočeš vse hraniti v Pythonu.
Korak 5: Kako dobiti opozorila, kadar se najde ujemanje?
E-pošta, Telegram ali Slack. Najlažji je Telegram, ker lahko pošlješ sporočilo s preprostim POST zahtevom. Ustvari bota, dobi ID klepeta in uporabi requests.post, da pošlješ sporočilo, kadar tvoj filter kej najde.
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})
Zdej dobiš pinge na svoj telefon brez dotikanja skripte. Le ne pozabi hraniti žetona bota zasebno.
Korak 6: Kako ravnati z rezultati in odločiti, kaj kupiti?
Ko opozorilo pride, še vedno rabiš ročno preveriti. Uporabi registrar kot Namecheap ali GoDaddy, da vidiš točno ceno, in preveri Wayback Machine za zgodovinsko vsebino. Ni vsaka potekla domena vredna registracijske takse.
Če eno kupiš in se izkaže za mulo, lahko zakopješ svoj mrtvi projekt za en dolar. To je poceni način, da se spustiš. In če iščeš navdihnjenje ali pocenjavo, prebrskaj grobišče, da vidiš, kaj so drugi zapustili.
Kaj lahko gre narobe pri avtomatiziranem lovljenju?
Veliko. Tvoja skripta lahko se zdre, kadar spletna stran spremeni svojo HTML strukturo. Lahko dobiš omejitev hitrosti ali blokado IP-ja. Lahko filtriraš preveč agresivno in spregledaš dobra imena, ali preveč ohlapno in dobiš poplavo smeti.
Tudi, trg domen se hitro giblje. Ime, ki izgleda brezplačno, lahko nekdo drug registrira preden tvoj cron opravilo teče. To je normalno. Vgradi ponovitev ali počakanje in ne priveži se k nobeni eni domeni.
Ali resnično rabiš avtomatizirati to?
Če preverjaš padanje enkrat na teden, ne. Ampak če dnevno osvežuješ sezname, skripta spremeni ure. Tudi ti omogoči hitreje delovati, kadar se pojavi dobro ime. Hitrost je pomembna pri lovljenju poteklih domen, ker dobra imena izginejo v minutah.
Slaba stran je, da avtomatizacija lahko te zapelje v mišljenje, da si produktiven. Nisi. Le hitreje filtriraš. Resnično delo je še vedno v ročnem preglejuvanju.
Kako naprej?
Začni majhno. Izberi en vir, en filter in en način opozorila. Naj to deluje, preden dodaš zapletenost. Potem raširi na več virov ali več filtrov. Skripta ni rabila biti popolna, le teči.
In če končaš z domeno, ki je nočeš, ne pusti je gniti. Zakopji jo na dead.domains in pusti nekoga drugega, da ji da drugo življenje. To je krog digitalne lastnine in je čudno zadovoljujoče.
Pojdi na dead.domains in poglej, kaj je že zakopano.
Pogosta vprašanja
Je legalno strgati sezname poteklih domen?
Da, dokler spoštuješ robots.txt in meje hitrosti. Javni seznami so namenjeni ogledu, ampak prehitro strganje lahko te blokira. Uporabi smiselne zamude in pravilen uporabniški agent. Če stranica ima plačen API, premisli o njegovi uporabi, da se izogneš pravnim glavobolom.
Katera je najboljša Python knjižnica za razdrejanje HTML-ja?
BeautifulSoup je najpogosteje izbrana, ker se lahko nauči in dobro deluje z neurejeno HTML. Za bolj zapleteno razdrejanje lahko uporabiš lxml ali Scrapy. Začni z BeautifulSoup in preklopi le, kadar zadeneš v mejitve hitrosti.
Kako pogosto naj poženem svojo skripto za potekle domene?
Enkrat na dan je navadno dovoljno za večino niš. Če loviš visokovredna padanje, poženi vsakih nekaj ur. Hrani v mislih, da pogostejše poženjanje poveča tveganje omejitev hitrosti, zato uravnoteži hitrost z varnostjo.
Lahko avtomatiziram celoten nakupni postopek?
Delno. Lahko avtomatiziraš preverjanje razpoložljivosti in celo naročanje, ampak resnična registracija navadno rabi ročno potrditev. Nekaj registrarji nudijo API-je za avtomatizirane nakupe, ampak pogosto imajo najmanje stanja ali rabijo odobritev. Ne pričakuj popolne avtomatizacije.
Kaj naj naredim, če moja skripta neha delovati?
Najprej preveri HTML strukturo spletne strani. Strani pogosto spremenijo postavitve, zato lahko tvoji izbiralniki zdrejo. Dodaj ravnjanje z napakami v svojo skripto, da zapiše težavo in te opozori. Potem posodobi izbiralnike in poženi ponovno. To je normalno vzdrževanje.