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

WinDev Discussion :

Extraction d'une chaine de caractère d'une page internet


Sujet :

WinDev

  1. #21
    Membre chevronné Avatar de laurent30s
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 881
    Points : 1 771
    Points
    1 771
    Par défaut
    j'ai trouver une class de parsing json pour twitter pensez vous que ça suffise ?
    Je ne sais pas ce que tu as trouvé, je ne sais pas te répondre...

    qu'es que tu appel flux à récupéré ? Moi ce que je veux récupéré c'est toutes les infos d'une fiche ex : Avatar (synopsis, titre, titre original durée, acteurs, réalisateur, Affiche etc...) En fait je m’était beaucoup inspiré du projet de Dominique.
    Je vais reprendre en partie ce que j'ai dit dans mon précédent message.
    Sur la page que nous a communiqué Dominique DAUSSY
    http://wiki.gromez.fr/dev/api/allocine_v3
    Il y a plein d'exemples de requêtes qui retourne du Json
    Par exemple, si tu cliques sur ce lien http://api.allocine.fr/rest/v3/searc...ar&format=json
    Tu vas avoir un flux Json s'afficher.

    Quand on regarde plus en détail l'URL on voit qu'il est demandé tous les movie,theater,person,news,tvseries qui contiennent le mot avatar
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://api.allocine.fr/rest/v3/search?partner=YW5kcm9pZC12M3M&filter=movie,theater,person,news,tvseries&count=5&page=1&q=avatar&format=json
    Il suffit de modifier l'URL ainsi pour demander seulement tous les filmes (movie) qui contiennent le mot avatar
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://api.allocine.fr/rest/v3/search?partner=YW5kcm9pZC12M3M&filter=movie&count=5&page=1&q=avatar&format=json
    Comme tu peux le voir suivant les paramètres utilisés et leurs contenus tu auras des réponses différentes.
    Donc a toi de voir pour que l'URL te permette d'avoir en réponse toutes les informations qui te sont nécessaires...

    Cette URL retourne le Code, le Titre_original, le Titre, l'Annee_de_production, la Date_de_sortie, Réalisateur, les Acteurs, la Note_de_presse, la Note_utilisateur, l'URL_poster et une liste de lien (la 1ère = fiche allocine)

    Ne connaissant pas exactement ton besoin j'ai fait une interprétation de ce flux.

    Tu as la chance que je suis curieux. Travaillant beaucoup avec du XML mais ne connaissant pas Json j'ai eu envie de voir comment on peut en extraire des données.
    L'idée c'est de reproduire la fonction XMLExtraitChaîne() qui permet d'extraire le contenu d'une balise dans un document XML.
    Pour cela j'ai fait une procédure JsonExtraitChaîne() qui essaye d'interpréter le codage Json.
    Cette procédure est simpliste, elle marche avec ce flux mais je ne garantis pas son fonctionnement dans tous les cas...
    Son code mérite sans doute d'être amélioré... à ceux que ça dit merci pour leur contribution...


    Tout d'abord un bout de code qui permet d'envoyer un requête paramétrée avec le champ SAI_Mots_clés qui comme son nom l'indique contient les mots clés...
    Puis on récupère la réponse dont on extrait la liste des films. Pour réduire le code à analyser et pouvoir parcourir chaque film avec ExtraitChaîne()
    Enfin on parcours cette liste en récupérant les infos avec la procédure JsonExtraitChaîne() et on rempli une table

    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
    53
    54
    55
    nPosition_depart,nPosition_fin,nNb_href,i sont des entier
    sChaine_Liste_de_Films,sChaine_Film sont des chaîne
    sCode,sTitre_original,sTitre,sAnnee_de_production,sDirecteurs,sActeurs,xNote_de_presse,xNote_utilisateur,sURL_poster,sURL_fiche,sURL sont des chaîne
    dDate_de_sortie est une Date
    sURL = ChaîneConstruit("http://api.allocine.fr/rest/v3/search?partner=YW5kcm9pZC12M3M&filter=movie&q=%1&format=json",SAI_Mots_clés)
     
    TableSupprimeTout(TABLE_Film)
     
    // Lance la requête
    SI PAS HTTPRequête(sURL) ALORS
    	Erreur(ErreurInfo())
    	RETOUR
    FIN
    // Récupère le résultat de la requête
    sChaine_reponse est une chaîne = HTTPDonneRésultat(httpRésultat)
     
    // récupère la liste des films seulement
    nPosition_depart       = Position(sChaine_reponse,"""movie"":[") + 10
    nPosition_fin          = Position(sChaine_reponse,"]",Taille(sChaine_reponse),DepuisFin)
    sChaine_Liste_de_Films = Milieu(sChaine_reponse,nPosition_depart,nPosition_fin - nPosition_depart - 1)
     
    // boucle pour récupérer chaque film et les ajouter dans la table
    BOUCLE 
    	i += 1
    	sChaine_Film = ExtraitChaîne(sChaine_Liste_de_Films,i,"},{")
    	SI sChaine_Film = EOT ALORS
    		SORTIR	
    	FIN		
     
    	sCode					= JsonExtraitChaîne(sChaine_Film,"code",1)
    	sTitre_original			= JsonExtraitChaîne(sChaine_Film,"originalTitle",1)
    	sTitre					= JsonExtraitChaîne(sChaine_Film,"title",1)
    	sAnnee_de_production	= JsonExtraitChaîne(sChaine_Film,"productionYear",1)
    	dDate_de_sortie			= Remplace(JsonExtraitChaîne(sChaine_Film,"releaseDate",1),"-","")
    	sDirecteurs				= JsonExtraitChaîne(sChaine_Film,"directors",1)
    	sActeurs				= JsonExtraitChaîne(sChaine_Film,"actors",1)
    	xNote_de_presse			= JsonExtraitChaîne(sChaine_Film,"pressRating",1)
    	xNote_utilisateur		= JsonExtraitChaîne(sChaine_Film,"userRating",1)
    	// "href" peut être dans "poster" et dans "link"
    	SI Position(sChaine_Film,"""poster"":") > 0 ALORS
    		nNb_href           +=1
    		sURL_poster			= Remplace(JsonExtraitChaîne(sChaine_Film,"href",1),"/","")		
    	SINON
    		sURL_poster			= ""
    	FIN
    	SI Position(sChaine_Film,"""link"":") > 0 ALORS
    		nNb_href           +=1
    		sURL_fiche			= Remplace(JsonExtraitChaîne(sChaine_Film,"href",nNb_href),"/","")		
    	SINON
    		sURL_poster			= ""
    	FIN
     
    	TableAjouteLigne(TABLE_Film,sCode,sTitre_original,sTitre,sAnnee_de_production,dDate_de_sortie,sDirecteurs,sActeurs,xNote_de_presse,xNote_utilisateur,sURL_poster,sURL_fiche)
    	nNb_href = 0
    FIN
    La procédure JsonExtraitChaîne()...

    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
    53
    54
    55
    PROCEDURE JsonExtraitChaîne(sSourceJson est une chaîne,sBalise est une chaîne,nIndice est un entier)
     
    Est_une_chaine est un booléen = Faux
    sBalise_cote est une chaîne = """" + sBalise + """:"
    nPosition_balise est un entier 			
    nPosition_debut_valeur est un entier	
    nPosition_fin_valeur est un entier
    sValeur_a_renvoyer est une chaîne 
    i est un entier
     
    nPosition_balise 		= PositionOccurrence(sSourceJson,sBalise_cote,nIndice)
    nPosition_debut_valeur	= nPosition_balise + Taille(sBalise_cote)
    SI Milieu(sSourceJson,nPosition_debut_valeur,1) = """" ALORS
    	nPosition_debut_valeur += 1
    	Est_une_chaine = Vrai
    FIN
    nPosition_fin_valeur = Taille(sSourceJson)
    SELON Est_une_chaine
    	CAS Vrai
    		SI Position(sSourceJson,""",",nPosition_debut_valeur) > 0 ET Position(sSourceJson,""",",nPosition_debut_valeur) < nPosition_fin_valeur ALORS
    			nPosition_fin_valeur = Position(sSourceJson,""",",nPosition_debut_valeur)
    		FIN		
    		SI Position(sSourceJson,"""},",nPosition_debut_valeur) > 0 ET Position(sSourceJson,"""},",nPosition_debut_valeur) < nPosition_fin_valeur ALORS
    			nPosition_fin_valeur = Position(sSourceJson,"""},",nPosition_debut_valeur)
    		FIN
    		SI Position(sSourceJson,"""}],",nPosition_debut_valeur) > 0 ET Position(sSourceJson,"""}],",nPosition_debut_valeur) < nPosition_fin_valeur ALORS
    			nPosition_fin_valeur = Position(sSourceJson,"""}],",nPosition_debut_valeur)
    		FIN
    	CAS Faux
    		SI Position(sSourceJson,",",nPosition_debut_valeur) > 0 ET Position(sSourceJson,",",nPosition_debut_valeur) < nPosition_fin_valeur ALORS
    			nPosition_fin_valeur = Position(sSourceJson,",",nPosition_debut_valeur)
    		FIN		
    		SI Position(sSourceJson,"},",nPosition_debut_valeur) > 0 ET Position(sSourceJson,"},",nPosition_debut_valeur) < nPosition_fin_valeur ALORS
    			nPosition_fin_valeur = Position(sSourceJson,"},",nPosition_debut_valeur)
    		FIN
    		SI Position(sSourceJson,"}],",nPosition_debut_valeur) > 0 ET Position(sSourceJson,"}],",nPosition_debut_valeur) < nPosition_fin_valeur ALORS
    			nPosition_fin_valeur = Position(sSourceJson,"}],",nPosition_debut_valeur)
    		FIN
    FIN
     
    POUR i = nPosition_fin_valeur A nPosition_debut_valeur PAS -1
    	SI Milieu(sSourceJson,i,1) DANS ("""",",","}","]") ALORS
    		nPosition_fin_valeur -= 1
    	SINON
    		SORTIR
    	FIN	
    FIN
     
    SI nPosition_balise = 0 ALORS
    	sValeur_a_renvoyer = ""
    SINON
    	sValeur_a_renvoyer = Milieu(sSourceJson,nPosition_debut_valeur,nPosition_fin_valeur - nPosition_debut_valeur + 1)
    FIN
     
    RENVOYER sValeur_a_renvoyer
    A noter dans la partie "link" il y a des [] donc un peut avoir en retour un tableau.
    Mon code est simpliste il ne récupère que le 1er lien (la fiche allocine) si tu as besoin de plus tu dois pouvoir y arriver en faisant une boucle.
    Bon dev
    Laurent

    - C’est génial.
    - Non c’est bizarre.
    - Justement quand c’est simple y’a des milliers de réponses et quand c’est bizarre y’en a aucune.

  2. #22
    Membre à l'essai Avatar de DavidArwen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    OK merci je vais travaillé là dessus et je te tiendrais au courant encore merci pour tes réponses et ton travail difficile puisque comme moi tu es en terrain inconnu

  3. #23
    Membre à l'essai Avatar de DavidArwen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    Bonsoir votre code fonctionne mais dans le cadre de l'affichage d'une fiche de film comment je fais pour récupéré par exemple la distribution d'un film. Alors j'ai un bouton rechercher qui recherche les film correspondant au mot clé, et j'ai un bouton afficher qui doit afficher toutes les infos sur un film par exemple Avatar et je bute sur la distribution. Auriez vous une idée Voici mon code ce n'ai qu'une ébauche pour l'instant

    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
     
    sCode = COL_Code[TableSelect(TABLE_Film)]
    SAI_Affiche = COL_Affiche[TableSelect(TABLE_Film)]
    //http://api.allocine.fr/rest/v3/movie?partner=YW5kcm9pZC12M3M&code=61282&profile=large&mediafmt=mp4-lc&format=json&filter=movie&striptags=synopsis,synopsisshort
    sURL = ChaîneConstruit("http://api.allocine.fr/rest/v3/movie?partner=YW5kcm9pZC12M3M&code=%1&profile=large&mediafmt=mp4-lc&format=json&filter=movie&striptags=synopsis,synopsisshort",sCode)
     
     
    // Lance la requête
    SI PAS HTTPRequête(sURL) ALORS
    	Erreur(ErreurInfo())
    	RETOUR
    FIN
    // Récupère le résultat de la requête
    sChaine_reponse est une chaîne = HTTPDonneRésultat(httpRésultat)
     
    // récupère la liste des films seulement
    nPosition_depart       = Position(sChaine_reponse,"""movie"":[") + 10
    nPosition_fin          = Position(sChaine_reponse,"]",Taille(sChaine_reponse),DepuisFin)
    sChaine_Liste_de_Films = Milieu(sChaine_reponse,nPosition_depart,nPosition_fin - nPosition_depart - 1)
     
    i += 1
    sChaine_Film = ExtraitChaîne(sChaine_Liste_de_Films,i,"},{")
    SI sChaine_Film = EOT ALORS
    	RETOUR
    FIN		
     
    SAI_Titre = JsonExtraitChaine(sChaine_reponse,"originalTitle",1)
    SAI_Synopsis = JsonExtraitChaine(sChaine_reponse,"synopsis",1)
    SAI_Acteurs = JsonExtraitChaine(sChaine_reponse,"actors",1)
     
    SI Position(sChaine_reponse,"""distributor"":") > 0 ALORS
    	nNb_href           +=1
    	sDistribution			= Remplace(JsonExtraitChaine(sChaine_reponse,"name",1)," ","")		
    SINON
    	sDistribution			= ""
    FIN
    SAI_Distribution = JsonExtraitChaine(sChaine_reponse,"name",1)
     
    Enregistrement_Images(SAI_Affiche,ExtraitChaîne(SAI_Affiche,1,"/",DepuisFin))
    IMG_Affiche = fRepExe()+"\IMAGES\"+ExtraitChaîne(SAI_Affiche,1,"/",DepuisFin)

  4. #24
    Membre chevronné Avatar de laurent30s
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 881
    Points : 1 771
    Points
    1 771
    Par défaut
    Regarde dans les contributions j'y ai placé hier soir une procédure qui permet de parser du Json.

    Cette procédure s'appelle JsonLit() et est semblable à la fonction XMLLit() (dont je me suit inspiré)
    Il suffit de donner la chaîne Json à parser et le chemin des balise à la manière XPath pour avoir en retour la valeur correspondante.
    A noter que la procédure sait accéder aux différentes lignes d'un tableau y compris imbriqué.

    Tu y trouveras également un exemple avec allocine
    Il y a un accès sans tableau pour le nombre de films retournés
    Et il y a un accès avec tableau pour toutes les rubriques d'un film

    Ce code est beaucoup plus abouti/fonctionnel/pratique que celui communiqué plus haut, qui n'était qu'une première réflexion...
    Essaye cette procédure et si tu as un soucis revient vers moi.

    NB : dans le ChaîneConstruit() de l'URL remplace la chaîne "avatar" par le nom du champ de saisi que tu utilises pour la recherche
    Bon dev
    Laurent

    - C’est génial.
    - Non c’est bizarre.
    - Justement quand c’est simple y’a des milliers de réponses et quand c’est bizarre y’en a aucune.

  5. #25
    Membre à l'essai Avatar de DavidArwen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    Bonsoir Laurent

    Ta procédure fonctionne très bien et je tenais a te félicité pour ton travail. Mais néanmoins j'ai une question dans le cas ou j'obtient le json de cette adresse comment je fais pour récupéré le genre de ce film sachant qu'il en a plusieurs. Merci pour l'éclaircissement...

  6. #26
    Membre à l'essai Avatar de DavidArwen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    petite précision le genre d'un film, il peu y en avoir 1 ou 2 ou plus on ne sait jamais et après avoir analyser le json à aucun endroit n'ai mentionner le nombre d’occurrences voilà...

    Encore merci de passer du temps sur mon problème

  7. #27
    Membre chevronné Avatar de laurent30s
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 881
    Points : 1 771
    Points
    1 771
    Par défaut
    Citation Envoyé par DavidArwen Voir le message
    petite précision le genre d'un film, il peu y en avoir 1 ou 2 ou plus on ne sait jamais et après avoir analyser le json à aucun endroit n'ai mentionner le nombre d’occurrences voilà...
    Selon ma procédurre JsonLit() tu trouveras le nombre d’occurrences ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nNb_film = JsonLit(sChaine_reponse,"/feed/count")
    Pour ce qui est du genre d'un film tu le trouves dans quelles enchaînement de balises ?

    Si tu ne trouves pas les données du genre dans la chaîne de réponse Json c'est qu'il faut changer la requête (URL) à allocine et dans ce cas je te renvoi sur la page que nous a communiqué Dominique DAUSSY
    http://wiki.gromez.fr/dev/api/allocine_v3
    Teste les différents liens et regarde s'il y en a un qui te retourne toutes les infos qui te sont nécessaires. Si c'est le cas il te faudra le placer dans la variable URL et utiliser JsonLit() avec les bonnes balises...
    Bon dev
    Laurent

    - C’est génial.
    - Non c’est bizarre.
    - Justement quand c’est simple y’a des milliers de réponses et quand c’est bizarre y’en a aucune.

  8. #28
    Membre à l'essai Avatar de DavidArwen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    Alors cette adreese et pour la recherche de film pour obtenir la liste je l'utilise en premier lieu (pas de probleme)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://api.allocine.fr/rest/v3/search?partner=YW5kcm9pZC12M3M&filter=movie,theater,person,news,tvseries&count=5&page=1&q=avatar&format=json
    Celle-ci est pour récupéré en détail les infos d'un film en voici l'adresse (ex: Avatar)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://api.allocine.fr/rest/v3/movie?partner=YW5kcm9pZC12M3M&code=61282&profile=large&mediafmt=mp4-lc&format=json&filter=movie&striptags=synopsis,synopsisshort
    Et c'est sur celle ci que je n'arrive pas a récupéré la liste des genres appartenant au film

  9. #29
    Membre chevronné Avatar de laurent30s
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 881
    Points : 1 771
    Points
    1 771
    Par défaut
    Wahouuuu... la chaîne retournée par la 2ème requête fait plus de 70 000 caractères !

    127 enchaînements de balises qui retournent des valeurs
    14 tableaux dont un de plus de 100 lignes

    Pour parser les tableaux il n'y a pas de rubrique qui retourne le nombre d’occurrence. Il faut boucler tant qu'une rubrique obligatoire ne retourne pas une valeur vide. En principe les rubriques code...

    Autre piège la réponse a des caractères en début de chaîne qui ne sont pas du Json.
    Il faut donc les enlever avant d'utiliser JsonLit()

    Exemple pour récupérer les genres

    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
    sChaine_reponse est une chaîne
    sGenre est une chaîne
    sValeur est une chaîne
     
    sURL sont des chaîne = ChaîneConstruit("http://api.allocine.fr/rest/v3/movie?partner=YW5kcm9pZC12M3M&code=61282&profile=large&mediafmt=mp4-lc&format=json&filter=movie&striptags=synopsis,synopsisshort")
     
    TableSupprimeTout(TABLE_Film)
     
    // Lance la requête
    SI PAS HTTPRequête(sURL) ALORS
    	Erreur(ErreurInfo())
    	RETOUR
    FIN
    // Récupère le résultat de la requête
    sChaine_reponse = HTTPDonneRésultat(httpRésultat)
     
    // enlève les caractère en début de chaîne qui ne sont pas du Json
    sChaine_reponse = Droite(sChaine_reponse,Taille(sChaine_reponse) - Position(sChaine_reponse,"{") + 1)
     
    i = 0
    BOUCLE
    	i += 1
    	// passe par sValeur pour éviter de parser 2 fois le fichier --> consommateur de temps
    	sValeur = JsonLit(sChaine_reponse,"/movie/genre[" + i + "]/$")
    	SI sValeur = "" ALORS
    		SORTIR
    	FIN
    	// soit tu remplis un fichier
    	// soit tu concatène dans une chaine (en principe il ne devrait pas y avoir beaucoup de valeurs)
    	sGenre += sValeur + " / "
    FIN
     
    sGenre = Gauche(sGenre,Taille(sGenre) - 3)
    Si tu veux récupérer d'autres valeurs de ce fichier, j'ai fait la liste des balises dans le fichier xls joint

    Si tu as un soucis de fonctionnement vérifie que je n'ai pas fait de coquille dans la transcription des balises...
    Fichiers attachés Fichiers attachés
    Bon dev
    Laurent

    - C’est génial.
    - Non c’est bizarre.
    - Justement quand c’est simple y’a des milliers de réponses et quand c’est bizarre y’en a aucune.

Discussions similaires

  1. [Batch] extraction caractère d'une chaine de caractère dans un fichier texte
    Par Zoïïc dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 24/06/2014, 19h20
  2. extraction d'une chaine de caractères d'une liste
    Par Supernul dans le forum Général Python
    Réponses: 10
    Dernier message: 16/02/2012, 14h44
  3. Réponses: 5
    Dernier message: 02/01/2006, 22h16
  4. [String]Recherche d'une chaine de caractères dans une autre
    Par Crazyblinkgirl dans le forum Langage
    Réponses: 3
    Dernier message: 29/07/2004, 11h51
  5. recherche d'une chaine de caractère dans une données text
    Par jdeheul dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 17/06/2004, 16h35

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