Aide pour un scritp

bjr,
j’ai une page de code…trop long pour moi…
le but est de recuperer les liens internet de cette page. ( les …/…/)
si vous avez un peu de temps pour me guider.
merci d’avance.
slt

Le python m’a semblé le plus simple vu que tu n’a pas précisé le langage.

[code]#!/usr/bin/python

import re
import sys

r_link = re.compile(r"http://\S*/\S/")

fic = open(sys.argv[1], “r”)

for ligne in fic :
occur = r_link.findall(ligne)
if len(occur) > 0 :
print occur[/code]
Je ne sais pas si l’expression régulière est exactement celle que tu veux mais ça fait l’affaire je pense. Après je ne sais pas quelle sort tu réserve à ces liens.

[quote=“bobylapointe”]bjr,
j’ai une page de code…trop long pour moi…
le but est de recuperer les liens internet de cette page. ( les …/…/)
si vous avez un peu de temps pour me guider.
merci d’avance.
slt[/quote]

lynx --dump -listonly "http://forum.debian-fr.org/posting.php?mode=quote&p=97787"

Références

   1. http://forum.debian-fr.org/./index.php
   2. http://forum.debian-fr.org/./search.php
   3. http://forum.debian-fr.org/./faq.php
   4. http://forum.debian-fr.org/./memberlist.php
   5. http://www.debian-fr.org/
   6. http://forum.debian-fr.org/faq.php
   7. http://forum.debian-fr.org/search.php
   8. http://forum.debian-fr.org/memberlist.php
   9. http://forum.debian-fr.org/groupcp.php
  10. http://forum.debian-fr.org/profile.php?mode=register
  11. http://forum.debian-fr.org/profile.php?mode=editprofile
  12. http://forum.debian-fr.org/privmsg.php?folder=inbox
  13. http://forum.debian-fr.org/login.php
  14. http://forum.debian-fr.org/index.php
  15. http://forum.debian-fr.org/profile.php?mode=sendpassword
  16. http://www.phpbb.com/
  17. http://www.phpbb-fr.com/

[quote=“MisterFreez”]Le python m’a semblé le plus simple vu que tu n’a pas précisé le langage.

[code]#!/usr/bin/python

import re
import sys

r_link = re.compile(r"http://\S*/\S/")

fic = open(sys.argv[1], “r”)

for ligne in fic :
occur = r_link.findall(ligne)
if len(occur) > 0 :
print occur[/code]
Je ne sais pas si l’expression régulière est exactement celle que tu veux mais ça fait l’affaire je pense. Après je ne sais pas quelle sort tu réserve à ces liens.[/quote]

tu le fais marché comment ca?
slt

Comme n’importe quel script: tu le mets dans un fichier, et tu le rends executable.
python doit bien sur tout de même être installé pour que ça marche.

Et on lui passe en argument le ficher à tester.

sinon tu fais encore plus simple tu te sert de la command grep :laughing:

$ cat ton fichier | grep "http://"

il devrait te retourner tout les lignes contenant au moins une fois “http://” (donc adresse compris) .

sinon tu pourrais faire çà en C mais çà serait beaucoup plus compliqué et il n’y aurait pas grand interet.

[quote=“MisterFreez”]Et on lui passe en argument le ficher à tester.[/quote]non, pas la peine. tu fais juste ce que j’ai dit, tu le mets dans un fichier (mettons qu’il s’appelle lescript) et tu le rends executable (chmod +x lescript), puis tu le lances: ./lescript
Pas la peine de faire appel soi même à l’interpreteur, il est déjà déclaré par le “shell escape” #!/usr/bin/python

Oui oui je sais j’ai pas mis le sha-bang pour rien ^^ ce que je veux dire c’est qu’on l’utilise comme ça :

[quote=“MisterFreez”]Oui oui je sais j’ai pas mis le sha-bang pour rien ^^ ce que je veux dire c’est qu’on l’utilise comme ça :

$ alllink.py salut.htm[/quote] :blush: désolé. l’avait pas compris.

ca ne marche pas j’ai aucun resultat
et avec lynx j’ai :

lynx --dump -listonly "http://forum.debian-fr.org/posting.php?mode=quote&p=97787"
lynx : Option non valide : -listonly
USAGE : lynx [options] [fichier]
Les options sont :

grr… pas de chance :frowning:

[quote=“bobylapointe”]ca ne marche pas j’ai aucun resultat
et avec lynx j’ai :

lynx --dump -listonly "http://forum.debian-fr.org/posting.php?mode=quote&p=97787"
lynx : Option non valide : -listonly
USAGE : lynx [options] [fichier]
Les options sont :

grr… pas de chance :frowning:[/quote]Les options (que tu ne donnes pas) sont… tu as regardé dans ces options pour voir s’il n’y avait pas une faute de frappe ou une légère difference dans la syntaxe dela version de lynx installée sur ta machine ?
Ca ne serait pas --listonly ?
C’est quelle version d’ailleurs ?
Sinon, peux tu être plus précis quand tu dis “ca ne marche pas j’ai aucun resultat” ?
Tu pourrais chercher un peu tout seul et donner des éléments nouveaux permettant de t’aider sans qu’on ait besoin de le demander ?

pour lynx j’ai trouvé dans le man
lynx --dump -short_url
et aprés je suis en train de voir avec python