[..] Lire le code source d'une page web déjà ouverte
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
- ZDS
- Membre émérite

- Messages : 554
- Enregistré le : jeu. 10 juin 2010 10:35
- Localisation : 22300 Cul-d'chouette Langue-de-vache
- Status : Hors ligne
[..] Lire le code source d'une page web déjà ouverte
Bonjour à tous ! ça faisait un moment que j'avais réussi à avancer seul, mais là je pense être assez dans la caguade pour supplier de l'aide ^^
Voila mon soucis, j'ai un script dont des infos primordiales se trouvent sur le web, mais ne souhaitant pas piloter la page moi même (pour laisser le projet entièrement hors ligne en terme de fonctionnement), je propose à l'utilisateur de se logguer lui même sur le navigateur de son choix et d'aller sur la page demander après s'être authentifié. une fois sur la page en question, l'utilisateur clique sur un bouton qui déclenche une action qui me prend la tête depuis un moment, la voici :
J'aimerai que le script repère si c'est une fenêtre internet explorer ou firefox (autant se limiter aux deux plus "connus" dans mon milieu), et si c'est le cas, récupère le code source de la page déjà ouverte. Je ne sais pas si je me fais bien comprendre, mais vu que l'utilisateur s'est authentifié lui même, le code source n'est pas le même que si on va chercher la page directement avec des commandes _IEOpen et autre.
Voila un exemple que je récupère en commande IE : <html><body>Bonjour inconnu</body></html>
Alors que le CS de la page ouverte est : <html><body>Bonjour ZDS</body></html>
Donc en bref, j'aimerai :
- soit pouvoir récupérer un code source d'une page en cours (sous IE et sous FF)
- soit pouvoir reprendre le pilotage d'une page (une sorte de IECreate, mais avec une fenetre qui existerait déjà)
Merci d'avance pour votre aide, et n'hésitez pas à poser des questions !
tchô!
ZDS
Voila mon soucis, j'ai un script dont des infos primordiales se trouvent sur le web, mais ne souhaitant pas piloter la page moi même (pour laisser le projet entièrement hors ligne en terme de fonctionnement), je propose à l'utilisateur de se logguer lui même sur le navigateur de son choix et d'aller sur la page demander après s'être authentifié. une fois sur la page en question, l'utilisateur clique sur un bouton qui déclenche une action qui me prend la tête depuis un moment, la voici :
J'aimerai que le script repère si c'est une fenêtre internet explorer ou firefox (autant se limiter aux deux plus "connus" dans mon milieu), et si c'est le cas, récupère le code source de la page déjà ouverte. Je ne sais pas si je me fais bien comprendre, mais vu que l'utilisateur s'est authentifié lui même, le code source n'est pas le même que si on va chercher la page directement avec des commandes _IEOpen et autre.
Voila un exemple que je récupère en commande IE : <html><body>Bonjour inconnu</body></html>
Alors que le CS de la page ouverte est : <html><body>Bonjour ZDS</body></html>
Donc en bref, j'aimerai :
- soit pouvoir récupérer un code source d'une page en cours (sous IE et sous FF)
- soit pouvoir reprendre le pilotage d'une page (une sorte de IECreate, mais avec une fenetre qui existerait déjà)
Merci d'avance pour votre aide, et n'hésitez pas à poser des questions !
tchô!
ZDS
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Re: [..] Lire le code source d'une page web déjà ouverte
perso j'aurais penser à effectuer un :
Ctrl+A => Ctrl+C => le logiciel récupère les infos copiés qui devrait normalement être le code hyml (c'est juste une supposition => à tester)
Ctrl+A => Ctrl+C => le logiciel récupère les infos copiés qui devrait normalement être le code hyml (c'est juste une supposition => à tester)
Le "ça ne marche pas" est une conséquence commune découlant de l’absence de membres inférieures.
- jbnh
- Niveau 11

- Messages : 1932
- Enregistré le : ven. 02 mai 2008 14:54
- Localisation : Bruxelles
- Status : Hors ligne
Re: [..] Lire le code source d'une page web déjà ouverte
Salut,
Donc si la fênetre est déjà ouverte -> _IEAttach pour avoir la fenetre en variable. Ensuite, _IEBodyReadHTML .
Donc si la fênetre est déjà ouverte -> _IEAttach pour avoir la fenetre en variable. Ensuite, _IEBodyReadHTML .
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !
Merci
Merci
- SrBelial
- Niveau 7

- Messages : 335
- Enregistré le : jeu. 22 juil. 2010 11:29
- Localisation : 81 et 31
- Status : Hors ligne
Re: [..] Lire le code source d'une page web déjà ouverte
@matheod : et non malheureusement copier/coller ne fonctionne pas, car cela ne copiera que les données affichées de la page ..... et non pas le code html. (à moins que certains navigateurs le permettent ...)
si je ne me trompe pas, sous FF CTRL+U ouvre le code source de la page ....
plus qu'à faire CTRL A + CTRL C pour mettre dans le presse papier
et sous IE c'est un poil plus compliqué, faut passer soit par menu contextuel (clic droit, puis on descend chercher l'option "afficher la source" avec un MouseClick) ...
voila voila
si je ne me trompe pas, sous FF CTRL+U ouvre le code source de la page ....
plus qu'à faire CTRL A + CTRL C pour mettre dans le presse papier
et sous IE c'est un poil plus compliqué, faut passer soit par menu contextuel (clic droit, puis on descend chercher l'option "afficher la source" avec un MouseClick) ...
voila voila
.-SrB-. The One
- NON ! AutoIt n'est PAS un langage réservé à la réalisation de bots !
- OUI ! AutoIt est un langage à part entière !
- Dans SciTE sélectionnez 1 mot puis F1
- Don't want english doc ?? go to documentation française !! >>ICI<<
Re: [..] Lire le code source d'une page web déjà ouverte
Le problème du ctrL+U c'est que ce n'est pas le code source de la page actuel, autrement dit si le javascript modifie plein de div par exemple via de l'ajax, le contenu ne sera pas bon.
Le copier coller copie vraiment le html, la preuve, on peut coller dans word ou des wysiwyg et ca colle la couleur, les images, les balises html, etc.
Le copier coller copie vraiment le html, la preuve, on peut coller dans word ou des wysiwyg et ca colle la couleur, les images, les balises html, etc.
Le "ça ne marche pas" est une conséquence commune découlant de l’absence de membres inférieures.
- ZDS
- Membre émérite

- Messages : 554
- Enregistré le : jeu. 10 juin 2010 10:35
- Localisation : 22300 Cul-d'chouette Langue-de-vache
- Status : Hors ligne
Re: [..] Lire le code source d'une page web déjà ouverte
Bonjour !
Merci Jbnh, c'est le style de fonction que j'ai essayé, mais les tutoriels de l'aide AutoIt ne sont pas très explicites, je vais me pencher un peu plus là dessus. Sinon aurais-tu le même genre de "tips" pour Firefox sous la main? ^^ (et un lien récent vers l'UDF en question si tu as le temps, c'est toujours pratique d'en garder une trace dans un thread connu)
C'est ce genre de solution que je cherche, le passage par le presse papier étant -comment dire- une méthode crade
que j'ai déjà testée, et oui le CtrlC-CtrlV récupère le contenu de la page et non le code source. Par contre il est mis en forme, et Word peut ainsi l'afficher en couleur ou autre (le passage se fait en RTF il me semble, mais certainement pas en HTML).
Merci d'avance !
ZDS
Merci Jbnh, c'est le style de fonction que j'ai essayé, mais les tutoriels de l'aide AutoIt ne sont pas très explicites, je vais me pencher un peu plus là dessus. Sinon aurais-tu le même genre de "tips" pour Firefox sous la main? ^^ (et un lien récent vers l'UDF en question si tu as le temps, c'est toujours pratique d'en garder une trace dans un thread connu)
C'est ce genre de solution que je cherche, le passage par le presse papier étant -comment dire- une méthode crade
Merci d'avance !
ZDS
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
-
ani
- Niveau 11

- Messages : 1826
- Enregistré le : lun. 23 juil. 2007 12:31
- Localisation : Bureau
- Status : Hors ligne
Re: [..] Lire le code source d'une page web déjà ouverte
Pour Firefox y a ce thread = http://autoit.fr/forum/viewtopic.php?f= ... 96&p=33519
Vous y trouverez la fonction _FFReadHtml celui-ci retourne le code source de la page
Je ne peux faire de test, n'ayant pas Mozilla-Firefox.
bonne continuation
Vous y trouverez la fonction _FFReadHtml celui-ci retourne le code source de la page
Je ne peux faire de test, n'ayant pas Mozilla-Firefox.
bonne continuation
Re: [..] Lire le code source d'une page web déjà ouverte
Bonjour,
Je n'utilise que Chrome, car j'aime bien la gestion des profils de chrome.
J'utilise donc Chrome.au3
Et donc, je voudrais récupérer le code source de la page affichée, mais pas avec FF ou IE, mais bien avec Chrome et Chrome uniquement.
Tout le début du code marche très bien : fermeture d'une instante de Chrome, Lancement de Chrome avec un des profils chrome en raccourci (j'ai pas réussi sans passer par un raccourci .lnk !), Login et de mot de passe saisies dans les champs de saisie et soumission de la page.
_ChromeShutdown()
_ChromeStartup("https://PageX-identification",@DesktopDir & "\Profilxxx- Chrome.lnk")
_ChromeDocWaitForExistenceByTitle("PageX", 5)
_ChromeObjSetValueByName("login",$cLogin)
_ChromeObjSetValueByName("password",$cPass)
_ChromeInputClickByType("submit")
C'est pour la suite que cela se complique. Avant j'utilisais des fonctions IE =>
_IENAvigate($oIE, $index, 0)
$CodeSourcePageHTML = BinaryToString(InetRead($index))
Et ça marchait nickel. Mais je ne trouve pas les mêmes fonctions avec Chrome.
Quelqu'un a une idée ?
Je n'utilise que Chrome, car j'aime bien la gestion des profils de chrome.
J'utilise donc Chrome.au3
Et donc, je voudrais récupérer le code source de la page affichée, mais pas avec FF ou IE, mais bien avec Chrome et Chrome uniquement.
Tout le début du code marche très bien : fermeture d'une instante de Chrome, Lancement de Chrome avec un des profils chrome en raccourci (j'ai pas réussi sans passer par un raccourci .lnk !), Login et de mot de passe saisies dans les champs de saisie et soumission de la page.
_ChromeShutdown()
_ChromeStartup("https://PageX-identification",@DesktopDir & "\Profilxxx- Chrome.lnk")
_ChromeDocWaitForExistenceByTitle("PageX", 5)
_ChromeObjSetValueByName("login",$cLogin)
_ChromeObjSetValueByName("password",$cPass)
_ChromeInputClickByType("submit")
C'est pour la suite que cela se complique. Avant j'utilisais des fonctions IE =>
_IENAvigate($oIE, $index, 0)
$CodeSourcePageHTML = BinaryToString(InetRead($index))
Et ça marchait nickel. Mais je ne trouve pas les mêmes fonctions avec Chrome.
Quelqu'un a une idée ?


