[R] Collection de liens en fonction de l'url

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
yohan8
Niveau 6
Niveau 6
Messages : 245
Enregistré le : mer. 07 déc. 2011 22:34
Localisation : Rhône
Status : Hors ligne

[R] Collection de liens en fonction de l'url

#1

Message par yohan8 »

Bonsoir,
J'aimerais faire la collection de lien d'une page web dont une partie de leur url concerne , dans l'exemple, seulement les liens du forum français d'autoit.

Code : Tout sélectionner

#include <IE.au3>
$oIE =_IECreate('http://autoitscript.fr/forum/portal.php')

Dim $liens[1]   ; crée une array pour la liste des liens
$n = 0
$sMyString = "http://autoitscript.fr/forum" [color=#008000];voici le bout d'url qui m'intéresse, j'aimerais ouvrir tout les liens dont ,dans ma page web, qui comporte cette partie d'url[/color]
$oLinks = _IELinkGetCollection($oIE) [color=#008000];collection de lien[/color]
For $oLink in $oLinks
    $sLinkText = _IEPropertyGet($oLink, "innerhtml") 
    If StringInStr($sLinkText, $sMyString) Then [color=#008000];pour chaque lien dans la collection de lien, ceux dont une partie de leur url correspond a $sMyString sont entré dans l'array[/color]
       $liens[$n] = $oLink.href    [color=#008000] ; enregistre le lien dans la liste[/color]
       $n += 1
       ReDim $liens[$n+1]     [color=#008000]; agrandit l'array[/color]
    EndIf
Next
ReDim $liens[$n]
Msgbox(0,"","Il y a " & $n & " liens qui correspondent",1)
Vous pourrez essayer le script il ne marche pas.

Quelqu’un a une idée ?

Yohan
Modifié en dernier par yohan8 le jeu. 05 janv. 2012 19:17, modifié 1 fois.
Avatar du membre
DimVar
Niveau 10
Niveau 10
Messages : 870
Enregistré le : ven. 30 mai 2008 15:08
Status : Hors ligne

Re: [...] Collection de liens en fonction de l'url

#2

Message par DimVar »

Bonjour,


Je dirais que si l'on consolewrite $n après le Next, on obtient "0"...

Cdlt.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
Avatar du membre
TopXm
Niveau 6
Niveau 6
Messages : 260
Enregistré le : mer. 25 mai 2011 16:37
Localisation : Usa
Status : Hors ligne

Re: [...] Collection de liens en fonction de l'url

#3

Message par TopXm »

Salut,

hé oui, tu ne passes pas dans la boucle, regarde par là

Code : Tout sélectionner

    $sLinkText = $oLink.href
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [...] Collection de liens en fonction de l'url

#4

Message par mikell »

Bah c'était presque ça...
Tu vas finir par le connaitre par coeur ce code :mrgreen:

Code : Tout sélectionner

#Include <Array.au3>
#include <IE.au3>
$oIE =_IECreate('http://autoitscript.fr/forum/portal.php')

Dim $liens[1]   ; crée une array pour la liste des liens
$n = 0
$sMyString = "http://autoitscript.fr/forum" ;voici le bout d'url qui m'intéresse, j'aimerais ouvrir tout les liens dont ,dans ma page web, qui comporte cette partie d'url
$oLinks = _IELinkGetCollection($oIE) ;collection de lien
For $oLink in $oLinks
    [color=#FF0000]$sLink = $oLink.href[/color]    ; [color=#008000]ça c'est [u]l'url[/u] du lien[/color]
    If StringInStr($sLink, $sMyString) Then ;pour chaque lien dans la collection de lien, ceux dont une partie [u][color=#FF0000]de leur url[/color] [/u]correspond a $sMyString sont entré dans l'array
       $liens[$n] =[color=#FF0000] $sLink [/color]    ; enregistre le lien dans la liste
       $n += 1
       ReDim $liens[$n+1]     ; agrandit l'array
    EndIf
Next
ReDim $liens[$n]
;Msgbox(0,"","Il y a " & $n & " liens qui correspondent",5)
_ArrayDisplay($liens)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
yohan8
Niveau 6
Niveau 6
Messages : 245
Enregistré le : mer. 07 déc. 2011 22:34
Localisation : Rhône
Status : Hors ligne

Re: [R] Collection de liens en fonction de l'url

#5

Message par yohan8 »

Super merci beaucoup !

Voila un script que j'adore :mrgreen:
Répondre