[R] Selection de texte sous IE

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
fouille
Niveau 2
Niveau 2
Messages : 16
Enregistré le : dim. 22 mai 2011 23:27
Status : Hors ligne

[R] Selection de texte sous IE

#1

Message par fouille »

Bonjour,

Je réalise un script avec AutoIt dans lequel je voudrais copier du texte. Ca se passe sur cette page http://www.charazay.com/index.php?act=match&id=14752978 dans la zone sous le dessin de terrain.
Si je fais afficher le code source on peut voir que le texte est encadré par un tas de balises (<strong>, <div>, <span>,...)! Je ne sais pas comment récupérer juste ce texte.
J'ai fait des essais avec _IEBodyReadText mais je récupère tout le texte de la page et quand je veux faire un send dans notepad ça écrit ligne par ligne et c'est plutôt long!
Mon idée serait de sélectionner (surligner en bleu) le texte qui m'intéresse et de simuler un ctrl+C puis de simuler un ctrl+V dans Notepad... Mais pour l'instant je bloque!
Quelqu'un aurait une idée?

Merci d'avance
Modifié en dernier par fouille le mer. 25 mai 2011 10:32, modifié 1 fois.
Avatar du membre
Zippo
Niveau 6
Niveau 6
Messages : 243
Enregistré le : mar. 30 nov. 2010 12:50
Status : Hors ligne

Re: [..] Selection de texte sous IE

#2

Message par Zippo »

Utilise :
1)_INetGetSource
2)_StringBetween
fouille
Niveau 2
Niveau 2
Messages : 16
Enregistré le : dim. 22 mai 2011 23:27
Status : Hors ligne

Re: [..] Selection de texte sous IE

#3

Message par fouille »

Zippo a écrit :Utilise :
1)_INetGetSource
2)_StringBetween
Pas sûr que ce soit ce que je cherche... Ou alors j'ai pas bien compris!
Avec ça, je pourrai envoyer ma string dans notepad sans que ça écrive ligne par ligne?
Merci pour ta réponse en tout cas!
Avatar du membre
Zippo
Niveau 6
Niveau 6
Messages : 243
Enregistré le : mar. 30 nov. 2010 12:50
Status : Hors ligne

Re: [..] Selection de texte sous IE

#4

Message par Zippo »

Si je comprends bien tu veux allez chercher des informations sur la page CHARAZAY et les mettrent sous notepad ou un fichier de lecture.
Petit exemple pour récuprer
91,Les cloportes de Nashville,66,team ardeche

Code : Tout sélectionner

#include <inet.au3>
#include <array.au3>
#include <string.au3>
Local $sCodeSource
$slien = "http://www.charazay.com/index.php?act=match&id=14752978"
$sCodeSource = _INetGetSource($slien);Recupere code source de la page
$sRecuperePtsJoueur1 = _StringBetween($sCodeSource,'<p id="homePoints" class="bigPoints center">','</p>');Recupere les pts du joueur1 grace au balise de la page html
$sRecuperePtsJoueur2 = _StringBetween($sCodeSource,'<p id="awayPoints" class="bigPoints center">','</p>');Recupere les pts du joueur2 grace au balise de la page html
$sRecuperePseudoJoueurs = _StringBetween($sCodeSource,'<p class="teamName center">','</p>');Recupere les deux pseudo
$hfileOpen = FileOpen("InfoPartie.txt", 1);Créer/ouvre un ficher TXT
FileWrite($hfileOpen,$sRecuperePseudoJoueurs[0] & " avec " & $sRecuperePtsJoueur1[0] & @CRLF & _;Ecrie les info...
                     $sRecuperePseudoJoueurs[1] & " avec " & $sRecuperePtsJoueur2[0] );Et la encore ...
FileClose($hfileOpen);Ferme le fichier
Voilà la petite démonstration, utilisent ces fonction pour n'importe quel balise. Et se script marche pour toutes les matchs ..
Et si tu tiens vraiment à ton notepad, rajoute ceci :

Code : Tout sélectionner

ShellExecute("notepad.exe",@ScriptDir & "\" & "InfoPartie.txt")
Voili Voilou ! En espérant t'avoir aidé ^^
Avatar du membre
sksbir
Niveau 7
Niveau 7
Messages : 384
Enregistré le : lun. 26 oct. 2009 17:57
Localisation : Lyon
Status : Hors ligne

Re: [..] Selection de texte sous IE

#5

Message par sksbir »

@fouille : sur ton lien, dans la zone sous le dessin du terrain, il n'y a plus rien...

@zippo : intéressant ton analyse, et ça présente l'avantage de pouvoir travailler en tache de fond :) . Par contre, tu récupères la page en tant que source, et du coup, t'es obligé de l'analyser.


Voici une solution qui exploite la page en tant qu'objet, à l'aide de IE.au3 :

Code : Tout sélectionner

#include <IE.au3>
$OIE=_IECreate("http://www.charazay.com/index.php?act=match&id=14752978")
$TEST=_IEGetObjById($OIE,"pagetitle")
MsgBox(0,"test",$TEST.innertext)
 
fouille
Niveau 2
Niveau 2
Messages : 16
Enregistré le : dim. 22 mai 2011 23:27
Status : Hors ligne

Re: [..] Selection de texte sous IE

#6

Message par fouille »

sksbir a écrit :@fouille : sur ton lien, dans la zone sous le dessin du terrain, il n'y a plus rien...
Ouais le site connait quelques soucis ces derniers jours...

Merci pour vos solutions, je vais tester tout ça.
Mais sinon, j'ai trouvé une autre solution tout simple (pas super jolie, mais qui marche ^^)
Send("^{a}")
Send("^{c}")

puis

Send("^{v}") dans un fichier texte!

Il reste plus qu'à traiter un peu le texte et c'est dans la poche!

Encore merci pour les réponses!!
Avatar du membre
Zippo
Niveau 6
Niveau 6
Messages : 243
Enregistré le : mar. 30 nov. 2010 12:50
Status : Hors ligne

Re: [..] Selection de texte sous IE

#7

Message par Zippo »

Ta technique n'est pas fiable ...
fouille
Niveau 2
Niveau 2
Messages : 16
Enregistré le : dim. 22 mai 2011 23:27
Status : Hors ligne

Re: [..] Selection de texte sous IE

#8

Message par fouille »

Zippo a écrit :Ta technique n'est pas fiable ...
Pourquoi? Pas "propre" ça je suis d'accord, mais pourquoi pas fiable?
Avatar du membre
Zippo
Niveau 6
Niveau 6
Messages : 243
Enregistré le : mar. 30 nov. 2010 12:50
Status : Hors ligne

Re: [..] Selection de texte sous IE

#9

Message par Zippo »

Bah ...
n#1)Il faut que la fenêtre soit sélectionné.
n#2)Il ne faut pas qu'un pop-up apparaissve (reviens un peu au n#1)
n#3)Il ne faut pas qu'il active un autre onglet en même temps.
Etc ...

Lis plutôt le code source avec l'exemple que je t'ai donné, ou alors celui de Sksbir.

Ces deux techniques sont fiable à 99.99% sauf si tu n'a pas internet ... :roll: ou alors le webmaster a changé les balises ^^
Avatar du membre
Yarillo
Niveau 5
Niveau 5
Messages : 109
Enregistré le : mer. 11 mai 2011 22:22
Status : Hors ligne

Re: [..] Selection de texte sous IE

#10

Message par Yarillo »

Pour avoir utilisé Supermacro suffisamment longtemps je peux assurer moi aussi que c'est pas fiable.
fouille
Niveau 2
Niveau 2
Messages : 16
Enregistré le : dim. 22 mai 2011 23:27
Status : Hors ligne

Re: [..] Selection de texte sous IE

#11

Message par fouille »

Zippo a écrit :Bah ...
n#1)Il faut que la fenêtre soit sélectionné.
n#2)Il ne faut pas qu'un pop-up apparaissve (reviens un peu au n#1)
n#3)Il ne faut pas qu'il active un autre onglet en même temps.
Etc ...

Lis plutôt le code source avec l'exemple que je t'ai donné, ou alors celui de Sksbir.

Ces deux techniques sont fiable à 99.99% sauf si tu n'a pas internet ... :roll: ou alors le webmaster a changé les balises ^^
OK je vois ce que tu veux dire... Bon après pour l'utilisation que je vais en avoir ça pourrait suffire, mais je vais tester vos techniques (pas eu le temps hier soir, mais je tenterai le coup...)

Merci encore
fouille
Niveau 2
Niveau 2
Messages : 16
Enregistré le : dim. 22 mai 2011 23:27
Status : Hors ligne

Re: [..] Selection de texte sous IE

#12

Message par fouille »

sksbir a écrit :@fouille : sur ton lien, dans la zone sous le dessin du terrain, il n'y a plus rien...

@zippo : intéressant ton analyse, et ça présente l'avantage de pouvoir travailler en tache de fond :) . Par contre, tu récupères la page en tant que source, et du coup, t'es obligé de l'analyser.


Voici une solution qui exploite la page en tant qu'objet, à l'aide de IE.au3 :

Code : Tout sélectionner

#include <IE.au3>
$OIE=_IECreate("http://www.charazay.com/index.php?act=match&id=14752978")
$TEST=_IEGetObjById($OIE,"pagetitle")
MsgBox(0,"test",$TEST.innertext)
 
Cool, ce code est tout simple et marche parfaitement pour ce que je veux faire :D
Merci beaucoup!

Merci aussi à Zippo, j'ai pompé sur ton exemple pour l'écriture dans les fichiers (ça m'a évité d'éplucher la doc :oops:)
Par contre j'ai pas encore pu valider ta méthode à cause du site qui n'affiche pas le texte qui m'intéresse 9 fois sur 10 en ce moment... Mais bon il n'y a pas de raison que ça ne marche pas!

Du coup problème résolu (c'est à moi de changer le titre du sujet?)! Merci à tous encore une fois :D
Avatar du membre
sksbir
Niveau 7
Niveau 7
Messages : 384
Enregistré le : lun. 26 oct. 2009 17:57
Localisation : Lyon
Status : Hors ligne

Re: [..] Selection de texte sous IE

#13

Message par sksbir »

fouille a écrit : Du coup problème résolu (c'est à moi de changer le titre du sujet?)! Merci à tous encore une fois :D
Oui, c'est à toi de mettre le titre qui va bien. :)
Répondre