[R] Une curiosité IE

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
Ahbadiane
Niveau 5
Niveau 5
Messages : 139
Enregistré le : jeu. 20 déc. 2007 22:39
Localisation : Paris
Status : Hors ligne

[R] Une curiosité IE

#1

Message par Ahbadiane »

Ce que je veux faire : enregistrer une page WEB dans IE au format TXT dans un fichier c:\temp\test\test.txt

Code : Tout sélectionner

; sous IE ouverture de la fenêtre "Enregistrer la Page Web"
Send("!F")
Send("r")
; attendre que la fenêtre soit ouverte et encore 1/2 seconde
WinWaitActive("Enregistrer la page Web")
Sleep(500)
Send("c:\temp\test\test.txt")
….
 
Le problème : les \ (backslash) ne sont pas envoyés dans le champ "Nom du fichier" et j'obtiens l'enregistrement du fichier sous le nom "c:temptesttest.txt"

Ce problème ne se produit que sur mon PC sous Windows XP pro 2002 service pack 2 et IE 7.0.5730.11

Je n'ai pas de problème sur un autre PC sous Vista et IE 7.0.6000 et si je fais la même chose manuellement ça marche également

Est-ce que quelqu'un aurait une idée sur ces backslashs fugueurs ?
Avatar du membre
arrkhan
Niveau 8
Niveau 8
Messages : 528
Enregistré le : sam. 17 nov. 2007 03:30
Status : Hors ligne

Re: [..] Une curiosité IE

#2

Message par arrkhan »

et bien en fait ils ne sont pas fugueurs, mais tout simplement interdit dans les nom de fichiers sous windows, et la fenetre te demandant le nom du fichier considere donc que tu veux sauvegarder a l'endroit par defaut en utilisant ton chemin moins les BS... CQFD ^^
Avatar du membre
Ahbadiane
Niveau 5
Niveau 5
Messages : 139
Enregistré le : jeu. 20 déc. 2007 22:39
Localisation : Paris
Status : Hors ligne

Re: [..] Une curiosité IE

#3

Message par Ahbadiane »

arrkhan a écrit :et bien en fait ils ne sont pas fugueurs, mais tout simplement interdit dans les nom de fichiers sous windows, et la fenetre te demandant le nom du fichier considere donc que tu veux sauvegarder a l'endroit par defaut en utilisant ton chemin moins les BS... CQFD ^^
Bonjour arrkhan,
Les \ ne sont pas interdits en saisie, d'ailleurs comme je le notais dans mon message, ils sont acceptés en saisie manuelle et sur un autre PC.
Non je pense qu'il y a un Pb entre le Send() d'AutoIt et cet écran, mais je sais vraiment pas pourquoi
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Une curiosité IE

#4

Message par ani »

bonjour

je ne pourrais expliquer le pourquoi du comment il faut utiliser les \\ au lieu de \
on trouve défois dans le regédit ce double slash :o
mais c'est windows :)

Send("c:\\temp\\test\\test.txt")

la question c'est pour la curiosité ou l'enregistrement d'une page web vers un fichier texte ?
Avatar du membre
Ahbadiane
Niveau 5
Niveau 5
Messages : 139
Enregistré le : jeu. 20 déc. 2007 22:39
Localisation : Paris
Status : Hors ligne

Re: [..] Une curiosité IE "Enregistrer sous"

#5

Message par Ahbadiane »

Bonjour ani,

Les doubles slash ne résolvent pas mon problème
Le problème ne vient pas du chemin Windows mais de la commande Send("c:\temp\test\test.txt") qui n'envoi pas les \ dans la fenêtre IE "Enregistrer sous" et ceux ceci que sur une machine. Je pense que le problème vient plutôt d'IE !?
Avatar du membre
Ahbadiane
Niveau 5
Niveau 5
Messages : 139
Enregistré le : jeu. 20 déc. 2007 22:39
Localisation : Paris
Status : Hors ligne

Re: [..] Une curiosité IE

#6

Message par Ahbadiane »

Rebonjour,

A la question d'Ani "Enregistrer une page Web en texte" : Cette page contient des informations de reporting, des centaines d'informations que je vais ensuite rechercher dans le fichier texte sauvegardé. Même si je l'enrtegistre au format HTML, j'aurai toujours le problème des slash qui ne sont pas envoyés dans l'interface.

J'ai une question : Existe-t-il un moyen de sauvegarder une page WEB autrement qu'au travers de l'interface d'IE (choix "Enregistrement sous") ? une commande AutoIt ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11784
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Une curiosité IE

#7

Message par Tlem »

Il serait peut-être plus simple que vous récupériez les informations directement avec AutoIt.

Regarder les liens suivant (Peut-être pourront-il vous aider) :
http://www.autoitscript.fr/viewtopic.php?f=3&t=93
http://www.autoitscript.fr/viewtopic.php?f=3&t=350
http://www.autoitscript.fr/viewtopic.php?f=3&t=410

Je vous conseil aussi la lecture de l'aide de AutoIt en recherchant ce qui à un rapport avec _IE...


Edit : Sinon autre solution : http://www.autoitscript.com/forum/index ... st&p=21348
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Ahbadiane
Niveau 5
Niveau 5
Messages : 139
Enregistré le : jeu. 20 déc. 2007 22:39
Localisation : Paris
Status : Hors ligne

Re: [R] Une curiosité IE

#8

Message par Ahbadiane »

Bonjour Tlem,

La solution est bien de faire l'enregistrement du Body de la page WEB avec _IEBodyReadText

Code : Tout sélectionner

$sText = _IEBodyReadText ($oIE)
$file = FileOpen ( "c:\temp\test\test.txt", 2)
FileWriteLine($file, $sText)
FileClose($file)
 
Cette solution est d'ailleurs plus "sécurisée" que d'envoyer des commandes Send() dans une interface utilisateur

Merci à tous
Répondre