← Atpakaļ uz Nekroloģu nodaļu

Automātiska beidzies domēnu meklēšana ar Python

Publicēja Peter Nagy · Ar MI palīdzību · 2026. gada 8. augusts · 5 min lasīšanai

Automatizēta beidzies domēnu meklēšana nozīmē, ka manuālu sarakstu atsvaidzināšanu aizstāj ar Python skriptu, kas regulāri pārbauda kritušo domēnu sarakstus, filtrē pēc noteiktiem kritērijiem un nosūta paziņojumu. Izmantosi requests, BeautifulSoup un vienkāršu cron darbu. Tas nav nekas sarežģīts, bet stundas pārvērš minūtēs. Un, ja atrodi nederīgu domēnu, vienmēr vari to apglabāt vēlāk.

Ko īsti dara automatizēta beidzies domēnu meklēšana?

Tā pārvērš garlaicīgu, atkārtotu uzdevumu par skriptu, kuru uzstādi un aizmirsti. Tu raksti Python kodu, kas iegūst beidzies domēnu sarakstus no publiskiem avotiem, pārbauda katru nosaukumu pret saviem noteikumiem un nosūta tev ziņojumu, kad kaut kas sakrīt. Vairs nav jāmostas 3:00, lai redzētu, vai tas 4 burtu .io beidzot ir atbrīvojies.

Pamata cikls ir vienkāršs: iegūsti, filtrē, paziņo. Vari to palaist uz lēta VPS vai savā datorā ar cron darbu. Visu var uztaisīt vienā pēcpusdienā, pat ja neesi profesionāls programmētājs.

Priekšnosacījumi: Kas nepieciešams pirms skripta rakstīšanas?

Dažas pamatlietas. Tev vajag Python 3.8 vai jaunāku, kā arī teksta redaktoru. Tev noderēs arī bezmaksas konts kādā domēnu API servisā, piemēram, WhoisXMLAPI vai RDAP, lai pārbaudītu reģistrācijas datumus. Šim solim budžets ir nulle, ja vien negribi maksāt par lielākiem pieprasījumu limitiem.

Tev vajag arī skaidru filtru. Zini, ko meklē: vārdu skaitu, garumu, paplašinājumu, atpakaļsaites vai konkrētu nišu. Uzraksti to pirms kodēšanas, citādi iegūsi skriptu, kas brīdina par katru nejaušu domēnu internetā.

1. solis: Kā iegūt beidzies domēnu sarakstus?

Sāc ar publiskiem kritušo domēnu sarakstiem. Pakalpojumi kā ExpiredDomains.net un NameJet publicē ikdienas sarakstus, lai gan tos ne vienmēr ir viegli nokasīt. Izmanto requests un BeautifulSoup, lai iegūtu HTML un izparsētu tabulas rindas.

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

Tas iegūst lapas saturu. Tad izvelc domēnu nosaukumus no tabulas. Lielākajai daļai sarakstu ir līdzīga struktūra, tāpēc daži find_all izsaukumi būs pietiekami. Esi pieklājīgs ar pieprasījumu biežumu, citādi tevi bloķēs.

2. solis: Kā filtrēt domēnus ar Python?

Filtrēšana ir tā maģija. Uzraksti funkciju, kas ņem domēnu un atgriež True vai False, pamatojoties uz taviem noteikumiem. Piemēram, tu gribi tikai .com domēnus ar tieši 6 burtiem un bez defisēm.

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

Vari arī filtrēt pēc atslēgvārdu sarakstiem. Ja meklē fitnesa domēnus, turi sarakstu ar atbilstošiem vārdiem un pārbaudi, vai kāds no tiem parādās. Izmanto re regex saskaņošanai, ja nepieciešami sarežģītāki modeļi.

3. solis: Kā pārbaudīt domēna pieejamību un metrikas?

Kad tev ir filtrēts saraksts, jānoskaidro, vai domēns tiešām beidzas. Izmanto RDAP, lai pārbaudītu reģistrācijas statusu. rdap bibliotēka to padara vienkāršu.

import rdap

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

Ja statusā ir "pending delete" vai "redemption period", domēns, visticamāk, beidzas. Vari arī pārbaudīt atpakaļsaites ar bezmaksas API, piemēram, Open PageRank, lai gan būs nepieciešama API atslēga. Turi pārbaudes vieglas, jo pārāk daudz pieprasījumu palēninās procesu.

4. solis: Kā ieplānot skripta automātisku palaišanu?

Izmanto cron operētājsistēmā Linux vai Task Scheduler sistēmā Windows. Palaid skriptu reizi dienā vai ik pēc dažām stundām, ja dzenies pēc karstiem kritumiem. Vienkārša cron rinda izskatās šādi:

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

Tas palaidīs skriptu katru rītu pulksten 6:00. Rezultātus saņemsi pirms ikdienas steigas. Vari arī izmantot schedule bibliotēku, ja gribi visu paturēt Python vidē.

5. solis: Kā saņemt paziņojumus, kad ir atrasta atbilstība?

E-pasts, Telegram vai Slack. Vienkāršākais ir Telegram, jo vari nosūtīt ziņojumu ar vienkāršu POST pieprasījumu. Izveido botu, iegūsti tērzēšanas ID un izmanto requests.post, lai nosūtītu ziņojumu, kad tavs filtrs kaut ko atrod.

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

Tagad saņemsi paziņojumus tālrunī bez skripta pieskāriena. Tikai atceries turēt bota tokenu privātu.

6. solis: Kā rīkoties ar rezultātiem un izlemt, ko pirkt?

Kad paziņojums atnāk, tev joprojām jāveic manuāla pārbaude. Izmanto reģistrāru, piemēram, Namecheap vai GoDaddy, lai redzētu precīzu cenu, un pārbaudi Wayback Machine, lai redzētu vēsturisko saturu. Ne katrs beidzies domēns ir vērts reģistrācijas maksu.

Ja nopērc vienu un izrādās, ka tas ir nederīgs, vari apglabāt savu mirušo projektu par vienu dolāru. Tas ir lēts veids, kā atlaist. Un, ja meklē iedvesmu vai izdevīgu pirkumu, apskaties kapsētu, lai redzētu, ko citi ir pametuši.

Kas var noiet greizi automatizētā meklēšanā?

Daudz kas. Tavs skripts var salūzt, ja vietne maina HTML struktūru. Vari tikt ierobežots pēc pieprasījumu skaita vai saņemt IP bloķēšanu. Vari filtrēt pārāk stingri un palaist garām labus nosaukumus, vai pārāk brīvi un noslīkt drazā.

Turklāt domēnu tirgus kustas ātri. Nosaukums, kas šķiet brīvs, var tikt reģistrēts kādam citam, pirms tavs cron darbs paspēj palaisties. Tas ir normāli. Iekļauj mēģinājumu vai gaidīšanu, un nepieķeries nevienam konkrētam domēnam.

Vai tiešām tev vajag automatizāciju?

Ja pārbaudi kritumus reizi nedēļā, tad nē. Bet, ja katru dienu atsvaidzini sarakstus, skripts ietaupa stundas. Tas arī ļauj rīkoties ātrāk, kad parādās labs nosaukums. Ātrumam ir nozīme beidzies domēnu meklēšanā, jo labi nosaukumi pazūd dažu minūšu laikā.

Mīnuss ir tas, ka automatizācija var radīt ilūziju, ka esi produktīvs. Tu neesi. Tu tikai ātrāk filtrē. Īstais darbs joprojām ir manuālajā pārskatīšanā.

Kur doties tālāk?

Sāc ar mazumiņu. Izvēlies vienu avotu, vienu filtru un vienu paziņojumu metodi. Liec to strādāt, pirms pievieno sarežģījumus. Tad paplašini ar vairāk avotiem vai filtriem. Skriptam nav jābūt perfektam, tam tikai jādarbojas.

Un, ja beigās iegūsti domēnu, kuru negribi, neļauj tam sapūt. Apglabā to dead.domains un ļauj kādam citam dot tam otru dzīvi. Tas ir digitālā īpašuma cikls, un tas ir savādi apmierinoši.

Dodies uz dead.domains, lai redzētu, kas jau ir apglabāts.

BUJ

Vai ir legāli skrāpēt beidzies domēnu sarakstus?

Jā, ja vien ievēro robots.txt un pieprasījumu limitus. Publiskie saraksti ir paredzēti skatīšanai, bet pārāk ātra skrāpēšana var novest pie bloķēšanas. Izmanto saprātīgus intervālus un pareizu lietotāja aģentu. Ja vietnei ir maksas API, apsver to izmantot, lai izvairītos no juridiskām problēmām.

Kāda ir labākā Python bibliotēka HTML parsēšanai?

BeautifulSoup ir visizplatītākā izvēle, jo to ir viegli apgūt un tā labi strādā ar nekoptu HTML. Sarežģītākai parsēšanai vari izmantot lxml vai Scrapy. Sāc ar BeautifulSoup un maini tikai tad, ja sasniedz veiktspējas limitus.

Cik bieži man vajadzētu palaist savu beidzies domēnu skriptu?

Parasti pietiek ar vienu reizi dienā lielākajai daļai nišu. Ja dzenies pēc augstvērtīgiem kritumiem, palaid ik pēc dažām stundām. Atceries, ka biežāka palaišana palielina risku tikt ierobežotam, tāpēc sabalansē ātrumu ar drošību.

Vai varu automatizēt visu pirkšanas procesu?

Daļēji. Vari automatizēt pieejamības pārbaudi un pat rezervēšanu, bet pati reģistrācija parasti prasa manuālu apstiprinājumu. Daži reģistrāri piedāvā API automātiskai pirkšanai, bet bieži vien ir minimālie atlikumi vai nepieciešama apstiprināšana. Neceri uz pilnīgi automatizētu procesu.

Ko darīt, ja mans skripts pārstāj strādāt?

Vispirms pārbaudi vietnes HTML struktūru. Vietnes bieži maina izkārtojumu, tāpēc tavi selektori var salūzt. Pievieno kļūdu apstrādi savam skriptam, lai tas reģistrē problēmu un brīdina tevi. Tad atjaunini selektorus un palaid vēlreiz. Tā ir normāla uzturēšana.