Vai al contenuto principale

Net::DNS - lo scraper risolve i domini in indirizzi IP

Panoramica dello scraper

Panoramica dello scraperNet::DNSNet::DNS – raccoglie i record DNS di un nome di dominio. Risoluzione di massa automatizzata di un database di domini, controllo della disponibilità dei domini.

La funzionalità di A-Parser consente di salvare le impostazioni di scraping dello scraper Net::DNS per un uso futuro (preset), impostare pianificazioni di scraping e molto altro.

Il salvataggio dei risultati è possibile nel formato e nella struttura necessari, grazie al potente motore di modelli integrato Template Toolkit che permette di applicare logica aggiuntiva ai risultati e di esportare i dati in vari formati, tra cui JSON, SQL e CSV.

Dati raccolti

  • Elenco di indirizzi IP
  • Server DNS utilizzato in caso di richiesta riuscita
  • Record DNS di qualsiasi tipo (vengono visualizzati in formato JSON, il che consente di ottenere comodamente i loro singoli parametri)

Casi d'uso

  • Risoluzione di database di domini
  • Verifica della disponibilità dei domini

Query

Come query è necessario specificare un elenco di domini, ad esempio:

a-parser.com  
yandex.ru
google.com
vk.com
facebook.com
youtube.com

Esempi di output dei risultati

A-Parser supporta una formattazione flessibile dei risultati grazie al motore di modelli integrato Template Toolkit, che gli consente di visualizzare i risultati in forma arbitraria, così come in forma strutturata, ad esempio CSV o JSON

Output predefinito

Formato del risultato:

$query: $ip ($ips.format('$ip, '))\n

Il risultato mostra il dominio e i suoi indirizzi IP:

youtube.com: 173.194.70.136 (173.194.70.136, 173.194.70.190, 173.194.70.93, 173.194.70.91, )  
google.com: 46.28.247.98 (46.28.247.98, 46.28.247.89, 46.28.247.84, 46.28.247.108, 46.28.247.119, 46.28.247.114, 46.28.247.88, 46.28.247.94, 46.28.247.99, 46.28.247.109, 46.28.247.93, 46.28.247.104, 46.28.247.113, 46.28.247.118, 46.28.247.123, 46.28.247.103, )
facebook.com: 173.252.110.27 (173.252.110.27, )
a-parser.com: 176.9.9.90 (176.9.9.90, )
vk.com: 87.240.143.244 (87.240.143.244, 87.240.131.120, )
yandex.ru: 93.158.134.11 (93.158.134.11, 213.180.193.11, 213.180.204.11, 77.88.21.11, 87.250.250.11, )

Salvataggio in formato SQL

Formato del risultato:

[% "INSERT INTO dns VALUES('" _ query _ "', '" _ ip _ "', '" _ ips.format('$ip, ') _ "')\n" %]

Esempio di risultato:

INSERT INTO dns VALUES('vk.com', '87.240.190.67', '87.240.190.67, 87.240.190.72, 87.240.190.78, 93.186.225.208, 87.240.137.158, 87.240.139.194, ')
INSERT INTO dns VALUES('a-parser.com', '176.9.9.90', '176.9.9.90, ')
INSERT INTO dns VALUES('yandex.ru', '5.255.255.50', '5.255.255.50, 77.88.55.50, 77.88.55.88, 5.255.255.5, ')
INSERT INTO dns VALUES('facebook.com', '157.240.19.35', '157.240.19.35, ')
INSERT INTO dns VALUES('youtube.com', '172.217.171.238', '172.217.171.238, ')

Dump dei risultati in JSON

Formato comune del risultato:

[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;

obj = {};
obj.query = query;
obj.ips = p1.ips;

obj.json %]

Testo iniziale:

[

Testo finale:

]

Esempio di risultato:

[
{"ips":[{"ip":"176.9.9.90"}],"query":"http://a-parser.com/"},
{"ips":[{"ip":"172.217.173.78"}],"query":"http://google.com/"},
{"ips":[{"ip":"77.88.55.60"},{"ip":"77.88.55.66"},{"ip":"5.255.255.55"},{"ip":"5.255.255.60"}],"query":"http://yandex.ru/"},
{"ips":[{"ip":"172.217.25.14"}],"query":"http://youtube.com/"},
{"ips":[{"ip":"87.240.190.78"},{"ip":"93.186.225.208"},{"ip":"87.240.137.158"},{"ip":"87.240.139.194"},{"ip":"87.240.190.67"},{"ip":"87.240.190.72"}],"query":"http://vk.com/"},
{"ips":[{"ip":"157.240.196.35"}],"query":"http://facebook.com/"}
]
suggerimento

Affinché le opzioni "Prepend text" e "Append text" siano disponibili nell'Editor delle attività, è necessario attivare "More options".

Impostazioni possibili

ParametroValore predefinitoDescrizione
DNS Servers208.67.220.220, 8.8.8.8Supporto per più server separati da virgola
Not found is errorConsente di ricontrollare le risposte false dai server DNS
Rotation typeConsistentlyMetodo di selezione del server DNS successivo (Sequenziale/Casuale)
Ban not working serversBan dei server non funzionanti tramite algoritmo euristico per 20 minuti; se rimane un solo server, non viene bannato
Query typeA - Address recordConsente di scegliere il tipo di record