• Home  / 
  • Linux
  •  /  Scraper un site sous Linux et en extraire les emails

Scraper un site sous Linux et en extraire les emails

By KrustyHack / last year
website scraping emails

Petit « tuto » rapide aujourd’hui. Des fois on a besoin de scraper des sites pour en récupérer des informations. Ici, on va scraper un site et récupérer les emails de celui-ci.

Scraper un site sous Linux avec wget

Première étape, on récupère tout le site.

╭─root@krustyhack ~ 
╰─➤ wget \
      --quiet \
      --recursive \
      --page-requisites \
      --html-extension \
      --convert-links \
      --restrict-file-names=windows \
      --domains www.domaine.tld \
      --no-parent \
      --directory-prefix=$TMP_DIR \
      --progress=bar \
      www.domaine.tld

Extraire les emails

Deuxième étape, on extrait les emails.

╭─root@krustyhack ~ 
╰─➤ grep -R -E -oh "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" * | sort |uniq > emails.txt

Ouais mais attend dans le site les emails sont du genre moi [at] pamplemousse.tld, comment je fais ? Ta regex va pas marcher !

Simple, on prépare les fichiers avant le grep:

╭─root@krustyhack ~ 
╰─➤ find . -type f -exec sed -i 's/ \[at\] /@/g' "{}" +;

Comme ça, on remplace [at] par @ et on peut enchaîner pépère avec le grep.

[button-green url= »https://gist.github.com/KrustyHack/2f5898db0d2571959b48″ target= » » position= »left »]Télécharger le script bash prêt à l’emploi[/button-green]