Aide et conseils concernant AutoIt et ses outils.
Ks10
Niveau 6
Messages : 282 Enregistré le : mer. 25 avr. 2012 20:38
Status :
Hors ligne
#1
Message
par Ks10 » ven. 24 janv. 2014 07:29
Bonjour,
Je voudrais récupérer la valeur de cette ligne mais je n'y arrive pas.
Code : Tout sélectionner
<td><input type="text" disabled="disabled" id="fe_text" value="[b]c'est cette valeur que je veux[/b]" size="15" readonly="readonly" /></td>
J'ai des pistes comme :
_IEFormElementGetValue mais en regardant la doc j'ai du mal à construire mon code, je voie pas comment le construire par rapport à l'exemple.
Une piste, un conseil, une explication svp ?
Merci d'avance
Modifié en dernier par
Ks10 le ven. 24 janv. 2014 11:16, modifié 1 fois.
Tlem
Site Admin
Messages : 11830 Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status :
Hors ligne
#2
Message
par Tlem » ven. 24 janv. 2014 08:06
Bonjour.
A partir des informations donné par mikell dans son petit tuto sympa sur
ce lien , vous pouvez arriver à ceci :
Code : Tout sélectionner
#include <Array.au3>
$Str = '<td><input type="text" disabled="disabled" id="fe_text" value="c est cette valeur que je veux" size="15" readonly="readonly" /></td>'
$Res = StringRegExp ($Str, 'value="(.*?)" size=', 3)
_ArrayDisplay($Res)
Ks10
Niveau 6
Messages : 282 Enregistré le : mer. 25 avr. 2012 20:38
Status :
Hors ligne
#3
Message
par Ks10 » ven. 24 janv. 2014 08:11
Non, ce n'est pas une chaine que j'ai comme ça.
Cette chaîne provient d'un site web.
Je voudrais récupérer ce qui y a dans la balise "value".
Tlem
Site Admin
Messages : 11830 Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status :
Hors ligne
#4
Message
par Tlem » ven. 24 janv. 2014 08:22
Ben dans ce cas il nous en faut plus. Le lien vers la page ou le code source de celle-ci car selon comment est construit celle-ci, il faut adapter en conséquence !
Sinon, rien ne vous empêche de récupérer et travailler sur le code source de la page pour récupérer vos infos plutôt que d'utiliser COM. ^^
Ks10
Niveau 6
Messages : 282 Enregistré le : mer. 25 avr. 2012 20:38
Status :
Hors ligne
#5
Message
par Ks10 » ven. 24 janv. 2014 08:29
Le lien :
www.adresseip.com
Le code source accessible comme d'habitude dans tous les navigateurs.
jguinch
Modérateur
Messages : 2515 Enregistré le : lun. 14 févr. 2011 22:12
Status :
Hors ligne
#6
Message
par jguinch » ven. 24 janv. 2014 10:12
Il faut que tu récupère d'abord l'élément qui t'intéresse en tant qu'objet :
$oInput = _IEGetObjById($oIE, "fe_text")
Ensuite, tu pourra récupérer la valeur :
MsgBox(0, "", "Adresse IP : " & _IEFormElementGetValue($oInput.value) )
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Yogui
Niveau 9
Messages : 689 Enregistré le : ven. 18 avr. 2008 17:29
Status :
Hors ligne
#7
Message
par Yogui » ven. 24 janv. 2014 10:33
Bonjour,
j'aurai fait comme ça .
► Afficher le texte
Code : Tout sélectionner
$source = HTTPRequest("GET", "http://www.adresseip.com/")
$balise_tr = StringRegExp($source, '<center>(.*?)</center>', 3)
$ip = StringRegExp($balise_tr[0], '<b>(.*?)</b>', 1)
MsgBox(0,"",$ip[0])
Func HTTPRequest($oMethod, $oURL, $oData = "")
If Not IsDeclared("$oHTTP") Then $oHTTP = ObjCreate("winhttp.winhttprequest.5.1")
$oHTTP.Open($oMethod, $oURL, False)
If $oMethod = "POST" Then $oHTTP.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
$oHTTP.Send($oData)
Return $oHTTP.ResponseText
EndFunc ;==>HTTPRequest
Ks10
Niveau 6
Messages : 282 Enregistré le : mer. 25 avr. 2012 20:38
Status :
Hors ligne
#8
Message
par Ks10 » ven. 24 janv. 2014 11:15
Merci pour vos réponses ! Je préfère la solution de Jguinch qui est plus simple pour moi je trouve
jguinch
Modérateur
Messages : 2515 Enregistré le : lun. 14 févr. 2011 22:12
Status :
Hors ligne
#9
Message
par jguinch » ven. 24 janv. 2014 12:05
Plus simple peut-être, mais le script dépendra toujours d'Internet Explorer...
La solution de Yogui est beaucoup plus fiable selon moi.
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !