Net::Whois - Veri kazıyıcı, RDAP ve WHOIS aracılığıyla alan adı verilerini kontrol eder
Veri kazıyıcı incelemesi

Alan adı verileri, alan adı bölgesine bağlı olarak RDAP (HTTP, JSON), WHOIS (port 43) veya operatörün web sayfası aracılığıyla toplanır. Her TLD için veri kazıyıcıda RDAP ve WHOIS sunucuları tanımlanmıştır; bölge için RDAP mevcutsa, sorgu öncelikle onun üzerinden yapılır, hata durumunda WHOIS'e geçilir; her ikisi de yoksa ve bir sayfa mevcutsa web üzerinden işlem yapılır.
Kontrol yöntemlerinin seti sadece TLD'ye değil, operatöre de bağlıdır. Bazı bölgelerde operatörün kararıyla WHOIS veya RDAP yoktur ya da çalışmaz. Kontrol için web sayfası da herkeste bulunmaz: bunun varlığını da operatör belirler. Eğer sayfa varsa, veri kazıyıcı verileri bu sayfa üzerinden çeker.
Operatörün sadece TLD'ye sahip olduğu, ancak sitelerin SLD (ikinci seviye, örneğin co.uk, org.uk) üzerine kaydedildiği bölgeler vardır. SLD sahibi bir veya birden fazla olabilir, ancak bu TLD operatörü değildir. Kontrol yöntemleri setini (WHOIS, RDAP, web sayfası, bunların kombinasyonu veya hiçbiri) artık SLD sahibi belirler.
WHOIS ve RDAP'taki alanların içeriği de mevzuat, operatör politikası ve kişisel veri kısıtlamaları nedeniyle farklılık gösterebilir. Ancak genel set öngörülebilirdir: kayıt, tarihler, NS, kayıt kuruluşu, durum.
Web üzerinden veri toplama sırasında bir standardizasyon yoktur. Her zaman alan adının kayıtlı olup olmadığı kontrol edilir. Geri kalanı operatörün sayfada ne gösterdiğine bağlıdır: neredeyse tam bir set olabilir veya sadece kayıtlı olduğu gerçeği yer alabilir.
Daha fazla bilgi: RDAP (İng.), WHOIS.
A-Parser işlevselliği, veri çekme ayarlarını ileride kullanmak üzere kaydetmenize (presetler), veri çekme zamanlaması oluşturmanıza ve çok daha fazlasına olanak tanır. Mümkün olan en fazla sonucu elde etmek için otomatik sorgu çoğaltma, dosyalardan alt sorgu ekleme, sayısal-alfabetik kombinasyonları ve listeleri tarama özelliklerini kullanabilirsiniz.
Sonuçların kaydedilmesi, sonuçlara ek mantık uygulamanıza ve verileri JSON, SQL ve CSV dahil olmak üzere çeşitli formatlarda çıktı almanıza olanak tanıyan yerleşik güçlü şablon motoru Template Toolkit sayesinde ihtiyacınız olan biçimde ve yapıda mümkündür.
Veri kazıyıcı kullanım örnekleri
🔗 Rastgele verileri seçme
Net::Whois rastgele verileri seçme
🔗 Alan adı parametreleri
Alan adlarına göre parametreleri alma
🔗 Alan adı süresi bildirimi
Alan adı kayıt süresinin dolması hakkında Telegram üzerinden bildirim alma
🔗 E-posta adresi veritabanı toplama
Şablon, Whois servisi aracılığıyla alan adlarının e-posta adreslerini toplamanıza olanak tanır.
Toplanan veriler
Aşağıdaki liste WHOIS/RDAP için tipik bir settir; belirli alanlar sunucu yanıtına ve yasalara bağlıdır. Web üzerinden veri çekme sırasında yalnızca kayıt durumu garanti edilir; diğer alanlar operatörün bunları yayınlaması durumunda doldurulur.
$registered— alan adının kayıtlı olup olmadığı$expire_date— alan adı kayıt bitiş tarihi$creation_date— alan adının ne zaman kaydedildiği$free_date— alan adının boşa çıkma tarihi$whoisserver— kullanılan WHOIS sunucusu (WHOIS sorgusunda; RDAP'ta genellikle boştur)$rdapserver— RDAP sunucusu URL'si (başarılı RDAP sorgusunda)$registrar— alan adı kayıt kuruluşu$updated_date— kaydın son güncellenme tarihi$data— ham yanıt: WHOIS metni veya RDAP JSON verisi$nsdizisi (Name servers):$ns.$i.server— NS sunucusu adı
$statusesdizisi (Statuses list):$statuses.$i.status— alan adı durumu
Özellikler
- Alan adı bölgesine göre otomatik RDAP veya WHOIS seçimi (RDAP öncelikli)
- Uzantının çalışan bir WHOIS/RDAP sunucusu yoksa ancak operatörün web sayfası varsa, kontrol bu sayfa üzerinden yapılır
- WHOIS/RDAP alanlarının içeriği sunucu yanıtına ve mevzuata bağlıdır
- Web üzerinden veri çekme sırasında her zaman alan adının varlığı kontrol edilir; diğer alanlar yalnızca operatör bunları sağlıyorsa alınır
- Bazı bölgelerin (TLD ve SLD) ne WHOIS/RDAP ne de web sayfası vardır — WHOIS verileri mevcut değildir, ancak alan adının varlığı
Net::DNS aracılığıyla kontrol edilir - Uluslararası alan adları ile çalışma desteği (IDN, örneğin яндекс.рф)
Kullanım seçenekleri
- Boştaki veya yakında boşa çıkacak alan adlarının toplanması
- NS sunucu listelerinin toplanması
- Alan adı durumlarının alınması
Sorgular
Sorgu olarak aranacak sitenin alan adını belirtmeniz gerekir, örneğin:
a-parser.com
yandex.ru
google.com
vk.com
facebook.com
Sonuç çıktı seçenekleri
A-Parser, yerleşik şablon motoru Template Toolkit sayesinde sonuçların esnek bir şekilde formatlanmasını destekler; bu da sonuçları serbest formda veya CSV ya da JSON gibi yapılandırılmış formatlarda çıktı almanıza olanak tanır.
Varsayılan çıktı
Sonuç formatı:
$query - registered: $registered, expire: $expire_date, creation: $creation_date
Sonuçta alan adı, kayıtlı olup olmadığı, kayıt bitiş tarihi ve kayıt tarihi görüntülenir:
facebook.com - registered: 1, expire: 30.03.2028, creation: 29.03.1997
a-parser.com - registered: 1, expire: 25.02.2022, creation: 25.02.2012
vk.com - registered: 1, expire: 23.06.2021, creation: 24.06.1997
yandex.ru - registered: 1, expire: 01.10.2021, creation: 23.09.1997
google.com - registered: 1, expire: 14.09.2028, creation: 15.09.1997
NS listesi çıktısı
Sonuç formatı:
$ns.format('$server\n')
Sonuç örneği:
demi.ns.cloudflare.com
vern.ns.cloudflare.com
Alan adı süre verilerinin CSV olarak çıktısı
Sonuç formatı:
[% tools.CSVline(query, registered, expire_date, creation_date, updated_date, free_date, whoisserver, rdapserver, registrar) %]
Sonuç örneği (.com alan adı, RDAP üzerinden yanıt — whoisserver boş, rdapserver dolu):
a-parser.com,1,25.02.2027,25.02.2012,10.02.2026,none,,https://rdap.verisign.com/com/v1/domain/a-parser.com,"Squarespace Domains II LLC"
NS listesinin CSV tablosuna çıktısı
Sonuç formatı:
[% FOREACH ns;
tools.CSVline(query, server);
END %]
Sonuç örneği:
a-parser.com,demi.ns.cloudflare.com
a-parser.com,vern.ns.cloudflare.com
Sonuçların JSON dökümü
Genel sonuç formatı:
[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;
obj = {};
obj.query = query;
obj.registered = p1.registered;
obj.expire_date = p1.expire_date;
obj.creation_date = p1.creation_date;
obj.updated_date = p1.updated_date;
obj.free_date = p1.free_date;
obj.whoisserver = p1.whoisserver;
obj.rdapserver = p1.rdapserver;
obj.registrar = p1.registrar;
obj.domains = [];
FOREACH item IN p1.ns;
obj.domains.push({
server = item.server
});
END;
obj.json %]
Başlangıç metni:
[
Bitiş metni:
]
Sonuç örneği (RDAP):
[{
"registered": 1,
"rdapserver":"https://rdap.verisign.com/com/v1/domain/a-parser.com",
"query":"a-parser.com",
"free_date":"none",
"domains":[
{
"server":"demi.ns.cloudflare.com"
},
{
"server":"vern.ns.cloudflare.com"
}
],
"registrar":"Squarespace Domains II LLC",
"expire_date":"25.02.2027",
"creation_date":"25.02.2012",
"whoisserver":"",
"updated_date":"10.02.2026"
}]
"Prepend text" ve "Append text" seçeneklerinin Görev Düzenleyici'de görünmesi için "More options" kısmını aktif etmeniz gerekir.
Sonuçların işlenmesi
A-Parser, sonuçları doğrudan veri çekme sırasında işlemenize olanak tanır; bu bölümde Net::Whois veri kazıyıcı için en popüler kullanım durumlarını sunduk.
Alan adı kayıt kuruluşunu alma
WHOIS üzerinden gelen yanıtta $p1.data alanı metin içerir; RDAP'ta ise JSON içerir. Her iki durumda da kayıt kuruluşunu almak için iki adet Sonuç Oluşturucu ekleyin.
Bir Result Builders (Sonuç Oluşturucu) ekleyin ve açılır listeden kaynağı seçin: $p1.data. Türü seçin: RegEx Match. RegEx alanına şunu yazın: Registrar:\s*(.+) ve registrarwhois değişkenine kaydedin.
Tekrar bir Result Builders (Sonuç Oluşturucu) ekleyin ve açılır listeden kaynağı seçin: $p1.data. Türü seçin: RegEx Match. RegEx alanına şunu yazın: "entities"[\s\S]+?"vcardArray"[\s\S]+?"fn"[\s\S]+?"text"[\s\S]+?"([^"]+?)" ve registrarrdap değişkenine kaydedin.
Result format (Sonuç formatı) kısmına şunu ekleyin: [% IF registrarrdap == 'none' %]$query - $registrarwhois[% ELSE %]$query - $registrarrdap[% END %] — eğer RDAP ismi bulamazsa (registrarrdap değeri none ise), WHOIS'ten gelen değer yazdırılır, aksi takdirde RDAP'tan gelen değer yazdırılır.
Örneği indir
Örnek A-Parser nasıl aktarılır
eJyVVNtO20AQ/RVrFEQoJioPfbGEqkATiSpNKAH1wU6lVTxJt6x3ze46EEX5987Y
jh1TpKpP9lzPmdvuYIPWSaMhugzBC/fk7iw69A6ieAd5+Q8RWFxL562wEEIurKMg
cohhij6Kfvwy0pEhxZUolIdwB36bI4UZym5limSUKckrYzPhKWnpBhuhCnaLT4Lb
cdBg2FTkwdVVcKqNxtPgZNF7LtBug4ug1/i8MCbFjSbz0fsenIUdpl/InmjYLxYh
VNBuXPIg5F5+OaiLbIxzscEHw2ylwlY9JmkqMubbS4VHtg6qgvpnA//KGUSaSk/d
FKpC4Ca1qI9aPnO9K6EchsCUJbqxNRnl9FhmKOs40IuhqgsoR1EGf69imhyOuI4F
MUnfWqRHK7yxs5wJkX4HRg+VmuAGleuQ2F4XUqU00uGKgm7rwPddZn/l2Df1HUPR
4F8scWiylNL17FsblZqJWTd2JTPpSeFuTKGp9o8hPCHmh57B1FB3MmOxQakDa3Ba
2xw1L1k7smHeqjpVdMZypNyBM4VdEl5M+DRlwa2vl5k2C1/L5PyN4P6waVGSuA/9
wfnZwfhQBZDoDU+xu7Ww2If/BZQAak97hS6BmLCSZL44/5zAZilsOrRWbLv6le7K
vFpdTT/+mQD9nSXwT858R0SZ6C2NXsn1rL7pQxML/UDPxkzfmCxXyBPXhVK0sA7v
28sZunpBWWhn9zb4poQgHs1bQnSMcl/nFbfcSmL3iTlntGPHqHXKpVDq8X5ybOFA
500+0yNr3yx2eTIgLqpHbbCkW2wvs6TKRS7p3teGDpEk7kT9BDZP5Y7W+be7q7Qc
Vur2fwBx19yZ
Olası ayarlar
| Parametre | Varsayılan değer | Açıklama |
|---|---|---|
| Recursive query | ☐ | WHOIS'in genişletilmiş bir sürümünü almanızı sağlar |
| WHOIS server | Kendi WHOIS sunucunuzu belirlemenizi sağlar | |
| RDAP server | Kendi RDAP sunucunuzu belirlemenizi sağlar | |
| Checking by DNS | ☑ | Alan adına ait bir IP'nin varlığına dayanarak alan adının kayıtlı olup olmadığını kontrol etmenizi sağlar |
| Checking domains by DNS record | ☑ | IP kontrolü yapar, ALLOCATED durumunu bulursa alan adını kayıtlı olarak tanımlar; seçenek kapalıysa IP kontrolü hiç yapılmaz |
| Force DNS check for not found domains | ☑ | Alan adı kayıtlı değil olarak belirlenmişse zorunlu kontrol yapar |