February 1, 200718 yr Hello, J'essaye de faire un script qui me pompe tout ce qu'il y a sur une page. L'astuce est que je n'ai besoin que de certains fichiers (pour le boulot). Comme il y a en moyenne 50 fichiers a télécharger, cliquer 50fois c'est lourd... Donc je download l'index.html, et je le découpe pour récupérer les fichier dont j'ai besoin... Jusque la, pas de problème... cat index.html | grep -i "gestcom" Et j'ai mon code html, mais je dois récupérer l'adresse exacte... Voici le type de ligne par fichier : <img src="/icons/unknown.gif" alt="[ ]"> <a href="ADRESSE A CHOPER">Nom du fichier</a> 07-Jan-2007 05:57 taille Donc en fait, j'aimerais trouver un moyen de choper a partir du herf=" jusqu'au " qui suit. Je tiens vraiment a ne pas faire un système de colonne en comptant les " ou les espaces car le code n'est pas toujours identique car il vient de serveurs différents... Voili voilou, merci d'avance si vous pouvez m'aider
February 1, 200718 yr Hello, J'essaye de faire un script qui me pompe tout ce qu'il y a sur une page. L'astuce est que je n'ai besoin que de certains fichiers (pour le boulot). Comme il y a en moyenne 50 fichiers a télécharger, cliquer 50fois c'est lourd... Donc je download l'index.html, et je le découpe pour récupérer les fichier dont j'ai besoin... Jusque la, pas de problème... cat index.html | grep -i "gestcom" Et j'ai mon code html, mais je dois récupérer l'adresse exacte... Voici le type de ligne par fichier : <img src="/icons/unknown.gif" alt="[ ]"> <a href="ADRESSE A CHOPER">Nom du fichier</a> 07-Jan-2007 05:57 taille Donc en fait, j'aimerais trouver un moyen de choper a partir du herf=" jusqu'au " qui suit. Je tiens vraiment a ne pas faire un système de colonne en comptant les " ou les espaces car le code n'est pas toujours identique car il vient de serveurs différents... Voili voilou, merci d'avance si vous pouvez m'aider maListeDUrl=$(sed -e "s/.*href=\"\([^"]*\)\".*/\1/g") Ca devrait le faire (j'ai pas de shell sous la main pour vérifier) En gros, ca te choppe toute la ligne, sauf que le contenu coincé dans les " du href, il est stocké dans une variable de sed, et tout la ligne est remplacé par cette variable ensuite (par l'appel de \1, qui est la variable sed) Par contre, il faut bien que les href soient encadré par des " " EDIT : correction du .* de selection par un [^\"] de fort bon aloi
February 1, 200718 yr Author Merci mais il y a une erreur de syntaxe car joe me fait une coloration plutot bizarre... En fait je ne sais pas tester tout de suite, donc j'essaye demain... Merci déja
February 1, 200718 yr c'est qu'il manque un \ sed -e "s/.*href=\"\([^\"]*\)\".*/\1/g" en plus c'est bien mis dan l'edit comme on dit : "sed, c'est bien"
Archived
This topic is now archived and is closed to further replies.