IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

VB6 récupérer une page HTML telle qu'affichée sur chrome ou firefox


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Homme Profil pro
    amateur
    Inscrit en
    Octobre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : amateur
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Octobre 2014
    Messages : 16
    Points : 11
    Points
    11
    Par défaut VB6 récupérer une page HTML telle qu'affichée sur chrome ou firefox
    Bonjour.

    je souhaite recupérer le contenu d'une page html. J'ai utilisé plusieurs possibilités URLDownloadToFile ou inet. Je récupère bien un fichier html similaire à celui qu'on peut récupérer lorsqu'on fait précéder l'url de "view-source:" depuis un navigateur.
    Par contre, le contenu diffère de celui obtenu en sauvegardant la page depuis Chrome ou depuis Firefox (par CTRL-S) par exemple.
    Le problème est que lorsqu'on fait un scroll sur la page et qu'on est presque arrivé à la fin de la page, des éléments supplémentaires sont ajoutés.
    Ici https://infiniteajaxscroll.com/examples/articles/ se trouve une illustration de ce que je décris.

    Ma question est comment récupérer le fichier html généré (tel qu'affiché sur la page) et pas celui récupéré par les méthodes que j'ai citées plus haut.

    Merci d'avance pour votre sollicitude.

  2. #2
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 168
    Points
    1 168
    Par défaut
    C'est du Latin de cuisine ton lien ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    amateur
    Inscrit en
    Octobre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : amateur
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Octobre 2014
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    peu importe le contenu. Si tu vas à la fin de la page, tu verras qu'elle s'auto-alimente. CE que je souhaite c'est récupérer la totalité de la page générée.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 304
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 304
    Points : 1 905
    Points
    1 905
    Par défaut
    Tu as donné toi même la solution sans t'en rendre compte. Tu fais descendre la page jusqu'en bas et tu récupères ensuite le code html.
    Sinon il faut enregistré la page avec les script JS qui génèrent les ajouts de page (dans ton exemple) mais ce ne sera pas toujours le cas.

  5. #5
    Membre à l'essai
    Homme Profil pro
    amateur
    Inscrit en
    Octobre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : amateur
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Octobre 2014
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    Heu!.... je sais bien qu'en allant en bas de page, elle s'enrchit de par elle même, puisque c'est l'objet de l'exemple que je donne.
    Ma question reste: comment le faire depuis un programme vb6?
    Pour l'instant mes solutions consistent à récupérer la page html soit via URLDownloadToFile soit via inet et ce que je récupère c'est la page native.
    Comment faire pour simuler la descente en bas de page afin de récupérer la page enrichie, c'est-à-dire en fait enregistrer la page résultant de l'exécution des scripts JS?

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 304
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 304
    Points : 1 905
    Points
    1 905
    Par défaut
    En naviguant sur la page, via selenium par exemple (https://stackoverflow.com/questions/...allation-steps )

  7. #7
    Membre à l'essai
    Homme Profil pro
    amateur
    Inscrit en
    Octobre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : amateur
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Octobre 2014
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    oui mais avec selenium, je serais à l'exterieur de vb6. Si je comprends bien, j'écris une macro selenium qui va me permettre de naviguer en bas de page mais ça ne se fera pas dans un webbrowser et encore moins avec inet ou URLDownLoadToFile.
    Mon problème reste donc entier.

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 304
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 304
    Points : 1 905
    Points
    1 905
    Par défaut
    Avec un webbrowser rien ne t'empêche d'aller en bas de la page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        WebBrowser1.Navigate "https://infiniteajaxscroll.com/examples/articles/"
        Do
            DoEvents
        Loop While WebBrowser1.ReadyState <> READYSTATE_COMPLETE
        WebBrowser1.Document.body.All(Me.WebBrowser1.Document.body.All.length - 1).scrollIntoView

  9. #9
    Membre à l'essai
    Homme Profil pro
    amateur
    Inscrit en
    Octobre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : amateur
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Octobre 2014
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    Merci de ta réponse. J'ai essayé. Je n'ai pas d'erreur. Mais, quand je récupère le inerhtml du webbrowser, j'ai toujours la page native non enrichie.
    Je ne suis qu'un béotien en vb6 et je n'ai pas envie de m'y atteler en profondeur.
    Je suis étonné qu'il n' y ait pas répertorié une façon d'obtenir la page enrichie.

    J'ai vu de nombreux exemples connexes et notamment il est question d'interpréter le contenu d'un fichier javascript. Moi je ne veux pas réinventer la poudre, ni bâtir une usine à gaz, juste récupérer le résultat.

    Par exemple, lorsque sous firefox, on enregistre une page html, un répertoire est créé du nom du fichier html. On y trouve tous les éléments constitutifs de la page: notamment les fichiers js mais pas seulement. Surtout, lorsqu'on examine le fichier html, ce n'est pas la page native qu'on retrouve mais la page enrichie.

    A la limite, je m'orientais vers l'idée d'exécuter firefox via un shell mais je ne sais pas ensuite de quelle façon demander la navigation en bas de page, puis la sauvegarde de la page, après son affichage en totalité. Et ensuite, j'aurais pompé le fichier html généré dans le répertoire: très lourd, très inélégant mais bon, c'est une piste quand même...

    Si quelqu un avait une idée...pour une solution vb6 ou par passerelle firefox ou autre....merci.

  10. #10
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 304
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 304
    Points : 1 905
    Points
    1 905
    Par défaut
    Le but final de récupérer le contenu de la page c'est quoi ? parce que utiliser selenium ou firefox, ça va revenir au mème (le webbrowser étant très vieux, il ne charge pas la suite de la page qui s'ajoute par le script).
    Pour utiliser selenium dans VB6 il faut suivre la méthode indiqué pour VBA, il me semble.

  11. #11
    Membre à l'essai
    Homme Profil pro
    amateur
    Inscrit en
    Octobre 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : amateur
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Octobre 2014
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    l'objectif est de récupérer la page complète parce que les informations qui m'intéressent s'y trouvent. Je récupère la page entière. Je l'analyse avec un automate d'états finis (ça, j'ai déjà écrit) et je récupère ce que je veux.
    Si le webbrowser est très vieux, qu'est-ce qui existe maintenant plus au goût du jour et qui fera le job?

Discussions similaires

  1. Réponses: 3
    Dernier message: 28/01/2011, 10h58
  2. [RegEx] Chercher le titre d'une page html et l'afficher en italique
    Par saramery dans le forum Langage
    Réponses: 6
    Dernier message: 03/11/2008, 09h16
  3. générer une page html à telle dimension
    Par kenny49 dans le forum Webdesign & Ergonomie
    Réponses: 2
    Dernier message: 14/06/2006, 10h32
  4. [VB6] Inserer une page Html dans VB
    Par Menthe_a_l_eau dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 23/03/2006, 11h26
  5. [VB6] Ecrire une page html
    Par eagleleader dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 24/11/2005, 18h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo