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

C++Builder Discussion :

récupérer des infos d'une page web (TWebBrowser)


Sujet :

C++Builder

  1. #1
    Membre régulier Avatar de LotfiB
    Inscrit en
    Août 2004
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 117
    Points : 75
    Points
    75
    Par défaut récupérer des infos d'une page web (TWebBrowser)
    Bonjour

    Je veux récupérer des infos d'une page web
    En fait, je fais une requette, mon serveur fait un calcul et m'écrit qqe chose que je veux récupérer.
    J'arrive à afficher à l'aide du TWebBrowser mais il me signale une erreur lors de la récupéreration... dès que j'essaye de l' OlePropertyGet("body").
    j'ai suivi :
    http://c.developpez.com/faq/bcb/?pag...perercorpspage
    mais ça ne marche pas.

    Voilà un extrait de mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     AnsiString Requette="http://... etc...";
     FormBrowser->WebBrowser1->Navigate(Requette);
     FormBrowser->Width=400;
     FormBrowser->Height=590;
     FormBrowser->Visible=true;
    j'attends (appui sur un bouton ou sur un evnt OnDocumentComplete) et je demande :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    AnsiString aContenuText;
    Variant vDocument = FormBrowser->WebBrowser1->ControlInterface->Document;
    //aContenuText  =vDocument.OlePropertyGet("body").OlePropertyGet("innerHTML");
    if (((IDispatch *)vDocument) != NULL)
    {
      Variant vBody = vDocument.OlePropertyGet("Body");
      Variant vContenuText = vBody.OlePropertyGet("InnerText");
      aContenuText = vContenuText;
    }
    erreur sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Variant vBody = vDocument.OlePropertyGet("Body");
    Violation d'acces à l'adresse...

    Merci pour votre aide
    Lotfi

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    531
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 531
    Points : 537
    Points
    537
    Par défaut
    Suis la Faq il y a d'autres méthodes qui marchent, celle la marchait sur mon encien poste en 2000 et plus maintenant non plus(et je sais pas pourquoi..).

    tu remplaceras simplement la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OleCheck(element->get_outerHTML(&string));
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OleCheck(element->get_outerTEXT(&string));
    pour ton cas de figure

  3. #3
    Membre régulier Avatar de LotfiB
    Inscrit en
    Août 2004
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 117
    Points : 75
    Points
    75
    Par défaut
    Citation Envoyé par Fbartolo
    Suis la Faq il y a d'autres méthodes qui marchent, celle la marchait sur mon encien poste en 2000 et plus maintenant non plus(et je sais pas pourquoi..).

    tu remplaceras simplement la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OleCheck(element->get_outerHTML(&string));
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OleCheck(element->get_outerTEXT(&string));
    pour ton cas de figure
    merci

    la syntaxe est
    Impeccable
    ciao

  4. #4
    Membre confirmé Avatar de Flow_75
    Femme Profil pro
    Ingénieure
    Inscrit en
    Mai 2005
    Messages
    1 096
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieure
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 096
    Points : 633
    Points
    633
    Par défaut
    Salut,

    c'est peut etre case-sensitve... donc peut etre que la balise "body" est ecrite "BODY" ou "body"....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupérer des info dans une page html
    Par DORBRITZ dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 06/03/2008, 11h13
  2. [RegEx] Récupérer des infos d'une page web
    Par Chgro dans le forum Langage
    Réponses: 9
    Dernier message: 20/03/2007, 07h44
  3. Obtenir des infos sur une page web en ligne
    Par Logan_Cale dans le forum Web & réseau
    Réponses: 1
    Dernier message: 20/08/2005, 15h36

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