Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 24/04/2018, à 15:25

Pam547

Scripter avec un filtre whois un moteur de recherche

Bonjour,

Je poursuis sur l'impulsion :

1) Je me demandais si ce script piquerait les yeux de quelqu'un et qu'il me dise peut-être pourquoi.
2) Je suis un peu embêté avec la dernière ligne d'effacement des fichiers temporaires. Et me demande comment faire autrement.
3) Je me rappelle de Terminology, l'émulateur de terminal d'Enlightenment. Il interagit avec la souris pour afficher des aperçus d'image entre autres. Serait-il possible, à votre avis, avec une combinaison de touche (ctrl+clic gauche par exemple) de sélection[ner] à partir de l'affichage du script les liens à ouvrir dans le navigateur web ?

Voilà le script :

#! /bin/bash 

echo -n "Entrez le thème des documents à rechercher : "   		# Interaction avec le script

read theme    								# Assignation de la variable 
theme=$( echo "${theme// /+}" )    					# Ajustement de la requête
wget -O searchweb.txt https://search.lilo.org/searchweb.php?q=$theme    # Récupération du code source de la page



grep -o '//[^/]\+/' searchweb.txt | sort -u > temp.txt 			# Récupérer seulement les noms de domaine
sed '/>/d' temp.txt > temp1.txt    					# Supprimer les lignes contenant " > "
sed '/=/d' temp1.txt > temp2.txt    					# Supprimer les lignes contenant " = "
sed '/lilo/d' temp2.txt > temp3.txt    					# Supprimer toutes les lignes des adresses du moteur de recherche
while read line; do echo "${line#*www.}" >> temp4.txt ; done < temp3.txt  	# Nettoyage du code (www.)
while read line; do echo "${line////}" >> temp5.txt ; done < temp4.txt    	# Nettoyage du code (/)


for line in $(cat temp5.txt); do whois -H "$line" | grep Registrant && echo -e "************ \n \n \n \n \n ************"; done    	# Moulinette des whois s'affichant dans le terminal


rm temp.txt & rm temp1.txt & rm temp2.txt & rm temp3.txt & rm temp4.txt & rm temp5.txt & rm searchweb.txt   				# Nettoyage des fichiers temporaires

Merci pour votre attention.

[edit : sélectionNER]

Dernière modification par Pam547 (Le 25/04/2018, à 10:04)


Art.9.(code civil)  Chacun a droit au respect de sa vie privée.

Art.12.(déclaration universelle des DDH) Nul ne sera l'objet d'immixtions arbitraires dans sa vie privée, sa famille, son domicile ou sa correspondance, ni d'atteintes à son honneur et à sa réputation. Toute personne a droit à la protection de la loi contre de telles immixtions ou de telles atteintes.

Hors ligne

#2 Le 24/04/2018, à 19:42

Watael

Re : Scripter avec un filtre whois un moteur de recherche

piquer les yeux, non.
on est plus sur de l'énucléation : c'est dégueux.

trop de commandes et de fichiers temporaires, mais sans les données "entrantes", et la sortie correspondante attendue...:(


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 25/04/2018, à 10:15

Pam547

Re : Scripter avec un filtre whois un moteur de recherche

Bonjour Watael,

Haha, Merci,
Je ne me croyais pas être capable de chirurgie de ce style. Faudra que j'en cause aux services de gestion des greffes d'organes.

Aujourd'hui les publicités envahissent chaque recoin de nos espaces. Ce script aurait pour but de faire la distinction entre une recherche scientifique, documentaire et une recherche commerciale, de service.

Bref, je ne comprends pas le c'est dégueux. La sortie est plutôt propre, même s'il est vrai que la sortie de la moulinette est loin de correspondre à ce qui est attendue. Pas évident de hacker une simple page web.

Par exemple il me faudrait au moins encore deux jours pour faire afficher les grep pertinents.

Et peut-être un trimestre pour limiter le nombre de fichier temporaire.

Enfin bref. Merci encore Watael. Même si je me doute que pour toi, my-sql est le saint Graal en matière de gestion de base de données.
Tien histoire de t'aider à oublier l'exorbit(ation)  wink 

Dernière modification par Pam547 (Le 25/04/2018, à 13:01)


Art.9.(code civil)  Chacun a droit au respect de sa vie privée.

Art.12.(déclaration universelle des DDH) Nul ne sera l'objet d'immixtions arbitraires dans sa vie privée, sa famille, son domicile ou sa correspondance, ni d'atteintes à son honneur et à sa réputation. Toute personne a droit à la protection de la loi contre de telles immixtions ou de telles atteintes.

Hors ligne

#4 Le 25/04/2018, à 15:40

bruno

Re : Scripter avec un filtre whois un moteur de recherche

Tiens un autre truc dégueu :

$ lynx -listonly -dump -nonumbers https://search.lilo.org/searchweb.php?q=aeronef | awk -F '/' '$3 !~ (/lilo/ || /bing/) {print $3}' | sort -u

Hors ligne

#5 Le 25/04/2018, à 15:50

Watael

Re : Scripter avec un filtre whois un moteur de recherche

#!/bin/bash

echo -n "Entrez le thème des documents à rechercher : "
read theme
theme="${theme// /+}"

wget -qO - "https://search.lilo.org/searchweb.php?q=$theme" \
   | sed -n '\@//[^/]\+/@{s@.*\(//[^/]\+/\).*@\1@;s/\(^wwww\.\|\/\)//g; /\(>\|=\|lilo\)/! p}' \
   | sort -u \
   | while read adr; do echo "${adr^^}"; whois -H "$adr" | grep Registrant; done

Dernière modification par Watael (Le 25/04/2018, à 15:50)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#6 Le 25/04/2018, à 17:43

Pam547

Re : Scripter avec un filtre whois un moteur de recherche

Merci Golgoth63, et merci Bruno pour vos suggestions.

Merci Watael pour la correction du script.
Je vais plancher dessus quelques jours pour inclure « sed » et « les pipes » aux soins à apporter pour obtenir des scripts propres et dignes de ce nom.

Je reviens pour développer la particularité de cette production dès que j'ai avancé.

Merci encore.

À bientôt.

Dernière modification par Pam547 (Le 25/04/2018, à 17:44)


Art.9.(code civil)  Chacun a droit au respect de sa vie privée.

Art.12.(déclaration universelle des DDH) Nul ne sera l'objet d'immixtions arbitraires dans sa vie privée, sa famille, son domicile ou sa correspondance, ni d'atteintes à son honneur et à sa réputation. Toute personne a droit à la protection de la loi contre de telles immixtions ou de telles atteintes.

Hors ligne

#7 Le 04/05/2018, à 17:52

Pam547

Re : Scripter avec un filtre whois un moteur de recherche

Bonjour,

Expression rationnelle

Je n'ai pas compris :

{s#.*\(//[^/]\+/\).*#\1# ;

J'ai précisé le code du script :

#!/bin/bash

echo -n "Entrez le thème des documents à rechercher : "
read theme
theme="${theme// /+}"

wget -qO - "https://search.lilo.org/searchweb.php?q=$theme" \
   | sed -n '\#//[^/]\+/# {s#.*\(//[^/]\+/\).*#\1# ; s/\(www\.\|\/\)//g ; /\(>\|=\|lilo\)/! p}' \
   | sort -u \
   | while read adr; do echo -e "************ \n \n \n \n \n************" && echo "https://www.${adr^^}"; \
	whois -H "$adr" \
	| grep -e "Registrant Organization" \
	  -e "Registrant Country" \
	  -e "Admin Email" \
	; done

Maintenant j'hésite à y inclure d'autres moteurs de recherche et plus de pages.
Ou préciser les résultats par une sélection.
Ou ajouter une fonction pour rentrer un fichier style play-liste de thème à rechercher.

Merci pour votre attention.


Art.9.(code civil)  Chacun a droit au respect de sa vie privée.

Art.12.(déclaration universelle des DDH) Nul ne sera l'objet d'immixtions arbitraires dans sa vie privée, sa famille, son domicile ou sa correspondance, ni d'atteintes à son honneur et à sa réputation. Toute personne a droit à la protection de la loi contre de telles immixtions ou de telles atteintes.

Hors ligne

#8 Le 04/05/2018, à 18:20

Watael

Re : Scripter avec un filtre whois un moteur de recherche

c'est une référence arrière (\1*): ça retient uniquement ce qui est entre // (inclus) et le premier / suivant.

*il peut y en avoir d'autres : \2 \3 \n+1...
pourvu que d'autres expressions soient mises entre parenthèses.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne