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.NET Discussion :

Récuperer données d'une page Web


Sujet :

VB.NET

  1. #1
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut Récuperer données d'une page Web
    Bonjour,

    J'utilise Visual Basic Express 2012.

    Je voudrais récupérer dans des textbox.

    Je voudrais le faire sur une fiche d'un film (n'importe lequel) sur le site Allociné.com

    Je suppose qu'il faut utiliser un Webbrower mais après, je sais pas trop comment faire.

    un peut d'aide serait la bien venu pour me lancer.

    Merci d'avance de votre aide.

    Bonne journée
    A+

  2. #2
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2013
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2013
    Messages : 156
    Points : 218
    Points
    218
    Par défaut
    Salut !

    Alors ,

    En théorie ton programme serais divisé en plusieurs partie
    -1 : Ouverture du site web

    -2 : Récupération du texte, Alors la je vois deux solutions soit lire directement le contenu de la page, soit lire le HTML et choisir les balises H1 , P ...

    -3 Enregistrement des données : Enregistre ce qui tu as récupérer dans un document XML ou TXT, tu met un délimiteur propre à chaque balise si tu doit les traiter en fonction de ce a quoi ça correspond

    -4 Tu lit et récupère , puis affiche dans tes textbox les données

    personnellement je le vois comme ça

  3. #3
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Merci beaucoup de ta réponse IPreferCSharp

    Toutefois, j'ai quand même un petit problème :
    Comme le sujet l'indique, je suis débutant
    Pour ouvrir le site, pas de problème (je crois)

    Mais c'est le reste de ton explication que je sais pas vraiment comment faire.

    Je pensais bien récupérer les données a partir des balises mais c'est là que je suis bloqué. Je n'ai aucune idée de la marche à suivre.

  4. #4
    Membre chevronné Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Points : 1 961
    Points
    1 961
    Par défaut
    Il existe plusieurs méthode pour faire ce que tu veux.

    Tu peux te servir d'HTML AGILITY PACK (à télécharger depuis Nuget Package), assez simple d'utilisation et très bien fait. (Avec un beau Tuto de tomlev, en C# mais tu peux le convertir en ligne si tu as des doutes sur la syntaxe)
    Tu peux te servir des membres de ton Webbrowser (webbrowser1.document te retourne un objet HtmlDocument qui contient plusieurs fonctions pour extraire -plus ou moins- ce que tu veux).
    Tu peux te servir d'une API/WebService (officielle si elle existe, officieuse si le suivi par le(s) développeur(s) est sérieux) pour interroger directement AlloCine sans avoir à fouiner dans le code html.
    Aider les autres, c'est encore la meilleure façon de s'aider soi-même. Martin Gray

    ToDo : Faire une ToDo List

  5. #5
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Merci _Ez3kiel

    L'idée à l'air bonne mais je dois avouer que au vus de mon niveau, je suis un peut perdu.

  6. #6
    Membre actif Avatar de DeWaRs
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Décembre 2006
    Messages
    291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 291
    Points : 269
    Points
    269
    Par défaut
    Hello,

    Il existe une API allocine qui fonctionne pas mal :
    http://wiki.gromez.fr/dev/api/allocine_v3

    Tout y est expliqué, mais si tu rencontres des soucis, n'hésite pas

    Cordialement

    DeWaRs

  7. #7
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Merci DeWaRs

    Citation Envoyé par DeWaRs Voir le message
    Il existe une API allocine qui fonctionne pas mal :
    http://wiki.gromez.fr/dev/api/allocine_v3
    Ceci à l'air plus que pas mal.

    Je sais pas qi c'est la meilleure solution et la plus simple mais je vais devoir attendre se soir pour étudier la question et surtout trouver et comprendre comment l'utiliser.

  8. #8
    Membre actif Avatar de DeWaRs
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Décembre 2006
    Messages
    291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 291
    Points : 269
    Points
    269
    Par défaut
    La plus simple est clairement d'utiliser les APIs, si tu sais récupérer le contenu d'une page web depuis du code, ca devrait etre rapide.

    Bon courage.

    DeWaRs

  9. #9
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Pour le moment, je sais pas trop comment je vais faire mais je verrais bien se soir

    Je sais pas trop comment utiliser l'API avec Visual Basic Express

  10. #10
    Membre expérimenté
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Points : 1 745
    Points
    1 745
    Par défaut
    Bonjour,

    Il faut savoir que manifestement, l'API d'AlloCiné n'est pas publique (et c'est bien dommage). Le site http://wiki.gromez.fr/dev/api/allocine_v3 fournit un code partner qui n'est a priori plus valide.

  11. #11
    Membre chevronné Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Points : 1 961
    Points
    1 961
    Par défaut
    Citation Envoyé par _Ez3kiel Voir le message
    Tu peux te servir d'une API/WebService (officielle si elle existe, officieuse si le suivi par le(s) développeur(s) est sérieux) pour interroger directement AlloCine sans avoir à fouiner dans le code html.

    Ou si tu n'as pas peur de l'anglais, Imdb a 2 APIs officielles et publiques.
    Aider les autres, c'est encore la meilleure façon de s'aider soi-même. Martin Gray

    ToDo : Faire une ToDo List

  12. #12
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Bonsoir à tous

    J'ai un début de quelque chose avec l'aide d'un tuto trouvé sur net.
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Class Form1
        Dim Web As WebBrowser = New WebBrowser
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Web.Navigate(TextBox1.Text)
            While Not Web.ReadyState = WebBrowserReadyState.Complete
                Application.DoEvents()
            End While
     
            Dim Titre As String = Web.Document.GetElementById("infoProgramme").InnerHtml
            MsgBox(Titre)
     
        End Sub
    End Class
    Dans ma TextBox1, je met l'adresse d'une fiche de film du site : http://www.dvdfr.com

    Mais voici le résultat de la mesgbox :
    <H1><SPAN>Pacific Rim</SPAN> (Blu-ray + Copie digitale) - Blu-ray</H1>
    <P>USA - 2013</P>
    <P>Warner Bros. Pictures, Legendary Pictures</P>
    En fait, je voudrais récupérer la valeur entre les balise <SPAN>

    PS : J'ai fait la demande de l'API du site qui existe mais en attendant, je faut autrement.

    Je sais pas si je me suis bien expliqué.

    Bonne nuit
    A+

  13. #13
    Membre expérimenté
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Points : 1 745
    Points
    1 745
    Par défaut
    Bonjour,

    Tu peux t'en sortir avec une expression régulière : Expressions régulières.
    Maintenant, j'ai regardé rapidement les apis de http://www.dvdfr.com. A priori tu n'as pas besoin de faire une demande pour les utiliser pour un usage perso et "raisonnable" . Il y a juste un quota de 200 requêtes par ... jours ?
    Par exemple :
    Pour retrouver l'Id du film :
    http://www.dvdfr.com/api/search.php?title="Il etait une fois dans l'ouest"
    Pour avoir la fiche complète du film par Id :
    http://www.dvdfr.com/api/dvd.php?id="156035"

  14. #14
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Citation Envoyé par ebastien Voir le message
    Bonjour,

    Tu peux t'en sortir avec une expression régulière : Expressions régulières.
    Maintenant, j'ai regardé rapidement les apis de http://www.dvdfr.com. A priori tu n'as pas besoin de faire une demande pour les utiliser pour un usage perso et "raisonnable" . Il y a juste un quota de 200 requêtes par ... jours ?
    Par exemple :
    Pour retrouver l'Id du film :
    http://www.dvdfr.com/api/search.php?title="Il etait une fois dans l'ouest"
    Pour avoir la fiche complète du film par Id :
    http://www.dvdfr.com/api/dvd.php?id="156035"
    Merci beaucoup ebastien

    Mais je dois avouer que j'ai pas tout compris et surtout sur les Expressions régulières.
    J'ai regarder sur plusieurs site et je ne vois pas comment l'utiliser.

    Pour tes derniers liens donnés, comme je suis au taf et que internet et bridé, je n'y ai pas accès donc je peut même pas essayer.

    Peut être avec le code source de la page je pourrais tester non ??
    Il y a moyen de me faire passer le code source des 2 pages si cela peut m'aider à faire des essais ??


    Il y as pas moyen de faire un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Titre = Se qui se trouve entre "<SPAN>" et "</SPAN>"

  15. #15
    Membre expérimenté
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Points : 1 745
    Points
    1 745
    Par défaut
    C'est vrai que l'utilisation des expressions régulières demande un peu de pratique mais c'est extrêmement puissant et mérite qu'on s'y attarde.
    Maintenant, pour répondre à ta question, tu peux toujours utiliser les méthodes de manipulation de chaînes (IndexOf, Mid, etc...).

    Concernant les api de dvdfr, l'url que j'ai indiquée renvoie un xml directement exploitable :
    Code XML : 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
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <dvd generator="$Id$">
    	<id>156035</id>
    	<url>http://www.dvdfr.com/dvd/f156035-il-etait-une-fois-dans-l-ouest.html</url>
    	<cover>http://images.dvdfr.com/images/dvd/cover_200x280/156/156035.jpg</cover>
    	<media>BRD</media>
    	<titres>
    		<fr>Il était une fois dans l'Ouest</fr>
    		<vo>C'era una volta il West</vo>
    		<alternatif></alternatif>
    		<alternatif_vo></alternatif_vo>
    	</titres>
    	<filiation></filiation>
    	<edition></edition>
    	<editeur>Paramount Pictures</editeur>
    	<distributeur>Paramount Home Entertainment France</distributeur>
    	<studio>Rafran Cinematografica, San Marco, Paramount Pictures</studio>
    	<listePays>
    		<pays id="3">Italie</pays>
    		<pays id="2">USA</pays>
    	</listePays>
    	<annee>1968</annee>
    	<sortie>1969-08-27</sortie>
    	<synopsis>Un homme à l'harmonica poursuit inlassablement Frank, un tueur sans pitié aux yeux bleus à la solde du patron des chemins de fer. L'Ouest se civilise, mais la haine des hommes ne change pas. Le film monument de Sergio Leone, avec un scénario ravageur écrit par les révolutionnaires du cinéma italien (Bertolucci et Dario Argento).</synopsis>
    	<reference>FR318626</reference>
    	<collection></collection>
    	<duree>165</duree>
    	<packaging>Blu-ray Disc</packaging>
    	<bitrate unite="mbits/s"></bitrate>
    	<authoring></authoring>
    	<disques nbdiscs="1">
    		<disque ordre="1">BD-50</disque>
    	</disques>
    	<zones>
    		<zone>A</zone>
    		<zone>B</zone>
    		<zone>C</zone>
    	</zones>
    	<image>
    		<format type="2">16/9 Natif</format>
    		<aspect_ratio>2.35</aspect_ratio>
    		<standard>PAL</standard>
    		<mode>Couleurs</mode>
    	</image>
    	<rating id="2">Accord parental</rating>
    	<stars>
    		<star type="Réalisateur" id="7208">Sergio Leone</star>
    		<star type="Acteur" id="5642">Charles Bronson</star>
    		<star type="Acteur" id="1997">Henry Fonda</star>
    		<star type="Acteur" id="2552">Claudia Cardinale</star>
    		<star type="Acteur" id="33112">Jason Robards Jr.</star>
    		<star type="Acteur" id="1705">Gabriele Ferzetti</star>
    		<star type="Acteur" id="6665">Paolo Stoppa</star>
    		<star type="Acteur" id="46329">Woody Strode</star>
    		<star type="Auteur (histoire)" id="8779">Dario Argento</star>
    		<star type="Auteur (histoire)" id="6160">Bernardo Bertolucci</star>
    		<star type="Auteur (histoire)" id="7208">Sergio Leone</star>
    		<star type="Scénariste" id="7208">Sergio Leone</star>
    		<star type="Scénariste" id="16228">Sergio Donati</star>
    		<star type="Compositeur" id="4436">Ennio Morricone</star>
    	</stars>
    	<disponibilite>
    		<code_dispo>1</code_dispo>
    		<libelle>Sorti le</libelle>
    		<date>2013-01-14</date>
    	</disponibilite>
    	<critiques>
    		<dvdfr></dvdfr>
    		<public>0,00</public>
    	</critiques>
    	<categories>
    		<categorie>Western</categorie>
    	</categories>
    	<audiotracks>
    		<track>
    			<langue>Anglais</langue>
    			<code id="137">DTSHD-MA5.1</code>
    			<standard id="9">DTSHD-MA</standard>
    			<encodage>5.1</encodage>
    		</track>
    		<track>
    			<langue>Anglais</langue>
    			<code id="140">DTSHD-MA2.0mono</code>
    			<standard id="9">DTSHD-MA</standard>
    			<encodage>2.0 mono</encodage>
    		</track>
    		<track>
    			<langue>Français</langue>
    			<code id="5">DD2.0mono</code>
    			<standard id="1">Dolby Digital</standard>
    			<encodage>2.0 mono</encodage>
    		</track>
    		<track>
    			<langue>Allemand</langue>
    			<code id="5">DD2.0mono</code>
    			<standard id="1">Dolby Digital</standard>
    			<encodage>2.0 mono</encodage>
    		</track>
    		<track>
    			<langue>Espagnol</langue>
    			<code id="5">DD2.0mono</code>
    			<standard id="1">Dolby Digital</standard>
    			<encodage>2.0 mono</encodage>
    		</track>
    	</audiotracks>
    	<soustitrage>
    		<soustitre type="normal">Français</soustitre>
    		<soustitre type="normal">Anglais</soustitre>
    		<soustitre type="normal">Allemand</soustitre>
    		<soustitre type="normal">Espagnol</soustitre>
    		<soustitre type="normal">Néerlandais</soustitre>
    		<soustitre type="normal">Danois</soustitre>
    		<soustitre type="normal">Suédois</soustitre>
    		<soustitre type="normal">Norvégien</soustitre>
    		<soustitre type="normal">Finlandais</soustitre>
    		<soustitre type="malentendants">Anglais</soustitre>
    	</soustitrage>
    	<listeBonus>
    		<bonus type="divers">Film en version restaurée et version cinéma</bonus>
    		<bonus type="video">Commentaires avec la participation des réalisateurs John Carpenter, John Milius et Alex Cox, des historiens du cinéma Sir Christopher Frayling et Dr. Sheldon Hall, des acteurs et de l'équipe du film
    			Un opéra de violence
    			Le prix du pêché
    			Quelque chose à voir avec la mort
    			Le chemin de fer : la révolution de l'Ouest
    			Les lieux de tournage
    			Galerie de la production
    		Bande-annonce (HD)</bonus>
    		<bonus type="dvdrom"></bonus>
    	</listeBonus>
    	<listeBonusHtml>
    		<bonushtml type="divers"><![CDATA[
    			Film en version restaur&eacute;e et version cin&eacute;ma<br />
    		]]></bonushtml>
    		<bonushtml type="video"><![CDATA[
    			Commentaires avec la participation des r&eacute;alisateurs John
    			Carpenter, John Milius et Alex Cox, des historiens du
    			cin&eacute;ma Sir Christopher Frayling et Dr. Sheldon Hall, des
    			acteurs et de l’&eacute;quipe du film<br />
    			Un op&eacute;ra de violence<br />
    			Le prix du p&ecirc;ch&eacute;<br />
    			Quelque chose &agrave; voir avec la mort<br />
    			Le chemin de fer*: la r&eacute;volution de l’Ouest<br />
    			Les lieux de tournage<br />
    			Galerie de la production<br />
    			Bande-annonce (HD)<br />
    		]]></bonushtml>
    		<bonushtml type="dvdrom"><![CDATA[
    			<br />
    		]]></bonushtml>
    	</listeBonusHtml>
    	<contenu>
    		<episodes></episodes>
    		<chansons></chansons>
    		<sketches></sketches>
    	</contenu>
    	<infos_supplementaires>
    	</infos_supplementaires>
    	<bandesAnnonces>
    	</bandesAnnonces>
    </dvd>

    Bon courage.

  16. #16
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Merci beaucoup de ta réponse qui m'aide déjà pas mal avec l'utilisation de fichier XML.

    Toutefois, comment à partir de mon appli, je peut récupérer le fichier XML d'un film.
    Je suppose qu'il faut utiliser l'API de DVDfr mais comment marche une API, et/ou avoir les code XML des films.

    Je sais pas si je me suis bien exprimé.

  17. #17
    Membre expérimenté
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Points : 1 745
    Points
    1 745
    Par défaut
    Effectivement, je pense que l'utilisation de l'api sera beaucoup plus simple que l'analyse HTML des pages.
    Sur le site de dvdfr, ils documentent les api avec leurs paramètres.
    Ces api sont tout simplement des urls qui retournent du XML.
    Pour les exploiter, tu peux utiliser un objet WebClient. Il y a plein d'exemples sur le net.

  18. #18
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Re

    Désolé mais je crois qu'il va falloir m'expliquer comment on utilise l'API de DVDfr et comment on l’intégré à mon code.

    Merci d'avance

  19. #19
    Débutant   Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 885
    Points : 267
    Points
    267
    Par défaut
    Avec le code XML de ebastien voici le code que j'ai fait et qui marche pas trop mal même si je n'arrive pas a faire certaines choses.

    Le problème, c'est que là, j'ai le code d'une seule fiche de film et je ne sais pas comment ça se passe avec l'API vu que je sais pas comment ça marche.

    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
    Public Class Form1
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
     
            '-- Lire un doc XML
            Dim xmlDoc = CreateObject("Microsoft.XMLDOM")
            xmlDoc.async = "false" ' permet de charger entièrement le document en mémoire avant le traitement
            xmlDoc.load(TextBox1.Text)
     
            '-- Lister les valeurs par nom de balise
            Dim oElement = xmlDoc.documentElement
     
            If Not oElement Is Nothing Then
                For Each x In oElement.getElementsByTagName("vo")
                    TextBox2.Text = x.Text
                Next
            End If
     
            If Not oElement Is Nothing Then
                For Each x In oElement.getElementsByTagName("fr")
                    TextBox3.Text = x.Text
                Next
            End If
     
            If Not oElement Is Nothing Then
                For Each x In oElement.getElementsByTagName("synopsis")
                    TextBox6.Text = x.Text
                Next
            End If
     
            If Not oElement Is Nothing Then
                For Each img In oElement.getElementsByTagName("cover")
                    PictureBox1.ImageLocation = img.Text
                Next
            End If
     
        End Sub
     
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Me.Close()
        End Sub
    End Class
    Je sais pas si il y a moyen de simplifier mais si oui, je suis preneur

  20. #20
    Membre expérimenté
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Points : 1 745
    Points
    1 745
    Par défaut
    Bonjour,
    Citation Envoyé par ebastien Voir le message
    Ces api sont tout simplement des urls qui retournent du XML.
    Pour les exploiter, tu peux utiliser un objet WebClient. Il y a plein d'exemples sur le net.
    As-tu chercher des infos sur comment utiliser l'objet WebClient ? Ces apis sont extrêmement simples à utiliser : Tu fais une instance de WebClient et tu utilises la méthode DownloadString (il faudra peut-être inclure le user agent dans le header (voir cette conversation). Ca te retournera une string contenant le XML.
    Je ne peux pas te faire d'exemple, je n'ai pas visual studio ici mais tu trouveras plein d'exemple sur le net. Il faut fouiller !

    Autre chose :
    - Tu devrais renommer tes controls : Textbox3 n'est pas très explicite comme nom. Lorsque qu'il te faudra débugger un écran avec 30 Textbox, tu vas pleurer pour savoir à quoi elles correspondent.
    - Essaye de créer une classe genre FicheFilm avec pour commencer une méthode LoadFiche (qui appellera l'api). Et utilise cet objet FicheFilm pour construire ton écran. Cela te permettra de faire évoluer ton logiciel plus facilement : Par exemple tu pourras garder en mémoire (dans une liste) les fiches de films déjà consultés ce qui permettra de pouvoir naviguer entre plusieurs fiches sans avoir à rappeler l'api à chaque fois ! Et puis c'est une bonne habitude à prendre ...

    Bon courage !
    eb.

Discussions similaires

  1. comment récuperer des données d'une page web
    Par roi des tenebres dans le forum Spring
    Réponses: 1
    Dernier message: 27/07/2009, 16h36
  2. bug dans programme d'extraction de données d'une page web
    Par youpimevla dans le forum Web & réseau
    Réponses: 11
    Dernier message: 31/08/2006, 10h02
  3. Réponses: 3
    Dernier message: 19/06/2006, 10h54
  4. [RegEx] Récupérer des données dans une page Web
    Par Pragmateek dans le forum Langage
    Réponses: 8
    Dernier message: 24/05/2006, 19h44
  5. [Système] Extraire des données d'une page web
    Par nazoreen dans le forum Langage
    Réponses: 17
    Dernier message: 22/03/2006, 21h38

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