
Inventus é um spider projetado para encontrar subdomínios de um domínio específico, rastreando-o e quaisquer subdomínios que descubra.
Inventus é uma aranha projetada para encontrar subdomínios de um domínio específico, rastreando-o e quaisquer subdomínios que descobrir. É uma aranha Scrapy, o que significa que é facilmente modificável e extensível às suas necessidades.
O Inventus requer que Scrapy esteja instalado antes de ser executado. Primeiramente, clone o repositório e entre nele.
$ git clone https://github.com/nmalcolm/Inventus
$ cd Inventus
Agora instale as dependências necessárias usando pip.
$ pip install -r requirements.txt
Supondo que a instalação tenha sido bem-sucedida, o Inventus deve estar pronto para uso.
O uso mais básico do Inventus é o seguinte:
$ cd Inventus
$ scrapy crawl inventus -a domain=facebook.com
Isso informa ao Scrapy qual aranha usar ("inventus" neste caso), e passa o domínio para a aranha. Quaisquer subdomínios encontrados serão enviados para STDOUT.
O outro parâmetro personalizado é subdomain_limit. Isso define um limite máximo de subdomínios a descobrir antes de encerrar. O valor padrão é 10000, mas não é um limite rígido.
$ scrapy crawl inventus -a domain=facebook.com -a subdomain_limit=100
A exportação de dados pode ser feita de várias maneiras. A maneira mais fácil é redirecionar STDOUT para um arquivo.
$ scrapy crawl inventus -a domain=facebook.com > facebook.txt
O Scrapy possui um recurso embutido que permite exportar itens em vários formatos, incluindo CSV, JSON e XML. Atualmente apenas subdomínios serão exportados, no entanto isso pode mudar no futuro.
$ scrapy crawl inventus -a domain=facebook.com -t csv -o Facebook.csv
Configurações podem ser feitas sobre como o Inventus se comporta. Por padrão, o Inventus ignorará o robots.txt, tem um tempo limite de 30 segundos, armazena em cache os dados de crawl por 24 horas, tem uma profundidade de crawl de 5 e usa a extensão AutoThrottle do Scrapy. Tudo isso e mais pode ser alterado editando o arquivo inventus_spider/settings.py. As configurações do Scrapy também são bem documentadas.
Sinta-se à vontade para abrir uma nova issue para qualquer um dos itens acima. O Inventus foi construído em apenas algumas horas e provavelmente conterá bugs. Você também pode entrar em contato comigo no Twitter.
Lançado sob a Licença MIT. Veja LICENSE.