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

VBA Access Discussion :

Récupérer un élément web via code VBAccess


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 9
    Par défaut Récupérer un élément web via code VBAccess
    Bonjour ,
    Je dois récupérer, à partir de
    code Access VB, des fichiers en téléchargement contenus dans une liste déroulante sur une page web.
    Quelqu'un peut-il m'aider SVP.
    Thanks par avance

  2. #2
    Expert confirmé
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Par défaut
    Hello,
    dans mon tuto sur les blogs, je montre deux méthodes pour récupérer le contenu d'une page web.
    http://cafeine.developpez.com/access...iel/weblog/#LB

    il ne te reste ensuite qu'à "parser" (filtrer) le contenu web pour obtenir les données que tu souhaites.

    voici le HTML d'une liste déroulante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <select name="machin" size="10" multiple> 
        <option value="1">Test1</option> 
        <option value="2">Test2</option> 
        <option value="3">Test3</option> 
    </select>
    Le tuto contient aussi des fonctions de parsing, mais voici un exemple :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    Option Compare Database
     
     
    Const strHTML As String = "blablabla<select name='machin' size='10' multiple>" & _
        "<option value='1'>Test1</option>" & _
        "<option value='2'>Test2</option>" & _
        "<option value='3'>Test3</option>" & _
        "</select></form></body></html>"
     
    Type Itemz
        Value As String
        id As String
    End Type
     
    Type BlocSelect
        count As Long
        item() As Itemz
        header As String
        name As String
        content As String
    End Type
     
    Sub GetHTMLList(ByVal str As String)
     
    Dim Bloc As BlocSelect
    Dim i As Long
    Dim s() As String
    Dim it() As Itemz
     
    str = strHTML
     
    Bloc.header = "<select" & Split(Split(str, "<select")(1), ">")(0) & ">"
    Bloc.name = Split(Split(Bloc.header, "name='")(1), "'")(0)
    Bloc.content = Split(Split(str, Bloc.header)(1), "</select>")(0)
     
    s = Split(Bloc.content, "<option")
    ReDim it(UBound(s))
    Bloc.count = UBound(s)
     
    For i = 1 To UBound(s)
        it(i).id = Split(Split(s(i), "value='")(1), "'>")(0)
        it(i).Value = Split(Split(s(i), ">")(1), "</option")(0)
    Next i
    Bloc.item = it
     
    Debug.Print Bloc.name
    Debug.Print Bloc.count
    For i = 1 To Bloc.count
        Debug.Print , Bloc.item(i).id, Bloc.item(i).Value
    Next i
     
    End Sub

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 9
    Par défaut
    Salu Cafeine,
    Merci beaucoup pour ta réactivité et l'exhaustivité de ta réponse.
    J'espère que ca correspond effectivement à mon besoin; je vais étudier ton tuto et la base qui l'accompagne.
    Encore thanks
    Très cordialement.



    Citation Envoyé par cafeine Voir le message
    Hello,
    dans mon tuto sur les blogs, je montre deux méthodes pour récupérer le contenu d'une page web.
    http://cafeine.developpez.com/access...iel/weblog/#LB

    il ne te reste ensuite qu'à "parser" (filtrer) le contenu web pour obtenir les données que tu souhaites.

    voici le HTML d'une liste déroulante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <select name="machin" size="10" multiple> 
        <option value="1">Test1</option> 
        <option value="2">Test2</option> 
        <option value="3">Test3</option> 
    </select>
    Le tuto contient aussi des fonctions de parsing, mais voici un exemple :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    Option Compare Database
     
     
    Const strHTML As String = "blablabla<select name='machin' size='10' multiple>" & _
        "<option value='1'>Test1</option>" & _
        "<option value='2'>Test2</option>" & _
        "<option value='3'>Test3</option>" & _
        "</select></form></body></html>"
     
    Type Itemz
        Value As String
        id As String
    End Type
     
    Type BlocSelect
        count As Long
        item() As Itemz
        header As String
        name As String
        content As String
    End Type
     
    Sub GetHTMLList(ByVal str As String)
     
    Dim Bloc As BlocSelect
    Dim i As Long
    Dim s() As String
    Dim it() As Itemz
     
    str = strHTML
     
    Bloc.header = "<select" & Split(Split(str, "<select")(1), ">")(0) & ">"
    Bloc.name = Split(Split(Bloc.header, "name='")(1), "'")(0)
    Bloc.content = Split(Split(str, Bloc.header)(1), "</select>")(0)
     
    s = Split(Bloc.content, "<option")
    ReDim it(UBound(s))
    Bloc.count = UBound(s)
     
    For i = 1 To UBound(s)
        it(i).id = Split(Split(s(i), "value='")(1), "'>")(0)
        it(i).Value = Split(Split(s(i), ">")(1), "</option")(0)
    Next i
    Bloc.item = it
     
    Debug.Print Bloc.name
    Debug.Print Bloc.count
    For i = 1 To Bloc.count
        Debug.Print , Bloc.item(i).id, Bloc.item(i).Value
    Next i
     
    End Sub

Discussions similaires

  1. Récupérer contenu page web via URLConnection
    Par Tazz54oli dans le forum Général Java
    Réponses: 3
    Dernier message: 29/04/2013, 12h54
  2. [PHP 5.3] Récupérer données pages web via PHP
    Par je.rochebrochart dans le forum Langage
    Réponses: 1
    Dernier message: 02/10/2011, 11h00
  3. [XML] Récupérer les éléments d'un code xHTML
    Par Noxalus dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 02/08/2011, 14h42
  4. Récupérer une page web complète (code+images+..)
    Par cutemeister dans le forum Général Java
    Réponses: 9
    Dernier message: 29/04/2009, 13h37
  5. Réponses: 7
    Dernier message: 14/02/2006, 12h51

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