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 error☐Consente di ricontrollare le risposte false dai server DNS
Rotation typeConsistentlyMetodo di selezione del server DNS successivo (Sequenziale/Casuale)
Ban not working servers☑Ban 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