Page 1 sur 1
[..] Filtrer fichier texte à partir d'une whitelist
Posté : dim. 19 juin 2011 19:12
par yeye5678
Bonjour, j'essaye de faire un script autoit permettant à partir d'un fichier de logs source (taille importante = 100 Mo) d'obtenir toutes les occurrences non contenues dans un fichier texte Whitelist
exemple: logs source
http://www.google.fr http://www.google.com http://www.autoit.fr http://www.yahoo.fr
fichier texte whitelist : google autoit
Resultat:
http://www.yahoo.fr
Quelles seraient les fonctions les plus appropriées pour effectuer ce genre de traitement ????
Re: [..] Filtrer fichier texte à partir d'une whitelist
Posté : dim. 19 juin 2011 19:53
par jchd
Si ce n'est pas destiné à un PC à pédales, on a de la mémoire et du CPU. Donc on charge ligne par ligne dans une table SQLite en éclatant sur sous-domaines et on filtre par une contrainte SQL. Si l'éclatement risque de poser problème, on ne met pas de contrainte et on charge brutalement, puis on se fait un gros delete sur LIKE '%' || <entrée de whitelist' || '%' (prévoir un délai dans ce cas).
Est-ce que ça conviendrait ainsi ?
Ta whitelist a-t-elle bien le format :
http://<serveur1>
http://<serveur2>
...
Re: [..] Filtrer fichier texte à partir d'une whitelist
Posté : mer. 22 juin 2011 22:03
par grimgrim44
l'idée de jchd est bonne,
si dans ton log il s'agit d'une succession de site web, le mieux est de transformer ton logs source dans une table SQL où tu ajoute chaque site. je suppose qu'il faudra travailler ton logs pour avoir que le debut de l'adresse WEB du genre
http://www.google.fr/ au lieu de
http://www.google.fr/#q=autoit
tu ajoute ta whitelist sur une 2eme table SQL et tu fait une requete SELECT du style :
SELECT LOG.log_adresse
FROM LOG LEFT JOIN WHITLIST ON LOG.log_adresse = WHITLIST.adresse
WHERE (((WHITLIST.adresse) Is Null));