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

Macros et VBA Excel Discussion :

VBA requete web - problème: identifiant et mot de passe [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2014
    Messages : 40
    Par défaut VBA requete web - problème: identifiant et mot de passe
    Bonjour à tous,

    cela fait maintenant quelques temps que ce forum m'est d'une grande aide et je vous remercie. Malheureusement, pour la première fois, je ne trouve pas de solution satisfaisante à mon problème.

    Comme mon titre l'indique, je veux lancer une requête sur une page web et extraire les données d'une table à partir de mon code. Le problème c'est que lorsqu'on lance la requête pour la première fois, le site en question demande de s'identifier (id et login).

    J'ai déjà essayé dans une première partie de mon code de m'identifier via internet explorer puis de lancer la procédure, mais sans succès (en ayant définit IE comme navigateur par défaut ça ne change rien):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    sub nav
     
        IE.navigate "site.fr/logout"
    WaitIE IE
        IE.navigate "site.fr"
        IE.Visible = True
    WaitIE IE
       Set IEDoc = IE.document
     
        Set InputMONID= IEDoc.all("Username")
        Set InputMONmdp = IEDoc.all("Password")
     
        InputMONID.Value = "MON_ID"
        InputMONmdp .Value = "MON_MDP"
     
        IE.document.all("Connexion").Click
     
    'Puis je lance la requete 
    With ActiveSheet.QueryTables.Add(Connection:= _
            "URL;http://monsite.fr", Destination:=Range("$A$2") _
            )
            .Name = "7"
           'etc
    end sub
    Après des heures de recherches plus qu'infructueuses, j'ai peut être trouvé UNE solution sur cette page mais je ne la comprends pas. J'espère que l'un de vous auras le courage d'y jeter un oeil: http://frederic.sigonneau.free.fr/code/Excel/RequeteWeb

    Je sais que je peux récupérer le tableau en naviguant dans IE mais j'aurais vraiment préféré utiliser les requêtes.

    Merci de m'avoir lu, dans l'attente de quelques réponses miraculeuses

    nb: en espérant n'avoir enfreint aucune rêgle du forum

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut HEU
    Bonjour

    pour savoir si tu peut te loger et recupérer des données sur le net avec une requete il te sufi de te servir de F12

    tu ouvre internet
    tu tape f12 /réseaux/démarrer la capture

    tu reprend ta fenêtre IE
    tu fait toute les action pour arriver a ta page
    tu minimise IE et tu reprend la fenêtre f12
    arrêter la capture
    tu va a la première ligne et tu regarde corps de la demande
    et tu verra comment est rédigé la requête

    si le login est possible avec une requête
    soit dans le "SEND" tu tu aura send ...quelque chose
    soit l'adresse(lien) de la page ne sera pas tout a fait pareil que le titre qu'il y a en haut a gauche sur IE
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2014
    Messages : 40
    Par défaut Bonsoir
    Bonsoir,

    merci pour la réponse rapide, je m'approche de la solution mais il y a sans doute quelque chose qui m'échappe:

    quand je regarde le corps de la demande sous l'enregistreur d'IE, il me renvoie cette ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    id1_hf_0=&Username=MonIdentifiant&Password=MonMotDePasse&Connexion=Connexion
    j'ai donc essayé plusieurs choses du genre du code ci dessous mais ça ne fonctionne pas (La requete n'a pas opéré la connection avec les identifiants):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        With ActiveSheet.QueryTables.Add(Connection:= _
            "URL;http://site.fr/login;JSESSIONID=2111a51b-4e43-41cd-b67c-6a3be49d39f4" & _
            "id1_hf_0=&Username=MonIdentifiantt&Password=MonMotDePasse&Connexion=Connexion", _
                Destination:=Range("$A$2"))
    Pour ce qui est du "SEND", je ne sais pas bien où regarder?

    Merci encore pour votre aide

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonjour
    déjà tu te sert de:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     With ActiveSheet.QueryTables.Add(Connection:= _
    c'est même pas la peine c'est une horreur ce truc ca devrait même pas exister

    regarde plutôt du coté de l'object("Microsoft .XMLHTTP")
    ensuite fait aussi une recherche sur "comment se servir de la touche F12 avec internet explorer"

    tu peux pas donner le lien même sans mots de passe???????
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2014
    Messages : 40
    Par défaut re
    Bonjour,

    Ahah une horreur? Je suis désolé, c'est essentiellement parce que je ne suis pas un expert que je viens chercher conseil...

    Je vais faire quelques recherches dans cette direction alors, si jamais je trouve une solution je viendrai la poster

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2014
    Messages : 40
    Par défaut Re
    Bonjour,

    Alors je n'ai pas trouvé la solution à ma première question doncje me suis résolu à naviguer à travers les balises des pages IE et ça fonctionne très bien.

    Merci et Bonne journée

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

Discussions similaires

  1. [Blog] Service web XML-RPC vérifier validité identifiant et mot de passe
    Par calitom dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 05/10/2010, 18h21
  2. Réponses: 0
    Dernier message: 07/11/2009, 14h41
  3. identifiant et mot de passe
    Par jlucapr67 dans le forum Firefox
    Réponses: 3
    Dernier message: 27/09/2008, 18h19
  4. identifiant et mot de passe
    Par khafor dans le forum VBA Access
    Réponses: 1
    Dernier message: 05/09/2007, 15h04

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