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 :

[WD 10] Enregistrer une page HTML


Sujet :

WinDev

  1. #1
    Candidat au Club
    Webmaster
    Inscrit en
    Novembre 2007
    Messages
    2
    Détails du profil
    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut [WD 10] Enregistrer une page HTML
    Bonjour à tous.

    J'ai la version 10 de Windev et depuis quelleque jours j'essaie de trouver une solution à mon probleme.

    Mon application sert à naviguer sur des pages web à l'aide d'un activex (web browser) et si l'utilisateur s'interesse à une page j'ai ajouté un bouton pour enregistrer la page sur le disque dur afin de naviguer ultérieurement même sans accés à internet (offline).

    Tous marche a merveille, 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
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
     
    // sLelien est un champ de saisie ou l'utilisateur tape l'url voulou
     
    HTTPRequête(sLelien)
    ActiveX1>>Navigate(sLelien)
     
    // récupérer le code source de la page
    SAI_Saisie2=HTTPDonneRésultat()
     
    //// enlever "http://www."
    sLelien=Milieu(sLelien,12,300)
     
    Sourcefichier est une chaîne
    leFichier est une chaîne = ComplèteRep(fRepExe())+sLelien+".htm"
     
     
    Sourcefichier =  SAI_Saisie2
    SI Sourcefichier<>"" ALORS
    	wwwFic est un entier
    	wwwFic = fOuvre(leFichier,foCréation)
    	SI wwwFic<>-1 ALORS
    		fEcrit(wwwFic,Sourcefichier)
    		fFerme(wwwFic)
    	FIN
    SINON	
    	Erreur("La page n'est pas accessible.")
    FIN
    Aprés avoir sauvegardé le fichier un autre bouton sert à naviguer sur la page enregistré avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AX_ActiveX1>>navigate(leFichier)
    Tout est nickel, sauf que : quand il y'a des images dans une page, il ne seront pas enregistré et donc ne seront pas chargé dans la deuxieme étape.

    Y'a t'il un moyen de récupérer les images ?

    ** L'idée est de sauvegarder la page entiere, comme dans IE ou firefox, quand on clique sur 'enregistrez sous' tous le contenu de la page sera enregistré.

    Merci pour votre aide..
    Cordialement.

  2. #2
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Ton code va se compliquer un peut bcp :

    il faut que tu analyses le texte dans SAI_Saisie2 et que tu recherches les balises image (<img src=/adresseimage.gif>) et tu les modifies en mettant un chemin local. Ensuite, il faut que tu récupéreres les images pour les enregistrer sur ton disque. Là, j'ai un petit tuyau à te donner. Il y a ce code que j'ai sous windev 7.5 et 8 dans le httprequete, il faut mettre le chemin distant de l'image :

    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
    // Définition des variables
    ResAppel est un booléen
    IdFichier est un entier
     
    // Ouverture du fichier "C:\MesImages\Images.GIF" 
    IdFichier = fOuvre("C:\MesImages\Images.GIF", foCréation)
    SI IdFichier <> -1 ALORS
       // Récupération de l'image
       ResAppel = HTTPRequête("http://www.windev.com/img/decor/bloc-h-g.gif")
       SI ResAppel = Vrai ALORS
          // Enregistrement de l'image récupérée dans le fichier
          fEcrit(IdFichier, HTTPDonneRésultat(), Taille(HTTPDonneRésultat()))
       FIN
     
       // Fermeture du fichier
       fFerme(IdFichier)
    FIN
    bon courage
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

Discussions similaires

  1. Enregistrer une page HTML avec CSS à l'intérieur
    Par khalidlyon dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 09/09/2009, 16h35
  2. Enregistrer une page HTML sur Excel
    Par Pedro87 dans le forum Langage
    Réponses: 30
    Dernier message: 04/09/2009, 14h53
  3. Enregistrer une page html sous vba
    Par scofild20 dans le forum Général VBA
    Réponses: 8
    Dernier message: 10/08/2007, 14h52
  4. Webbrowser : enregistrer une page html sur le disque
    Par Taurëndil dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 23/03/2007, 09h32
  5. Enregistrer une page html publiée sur Internet
    Par creezeer dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 20/11/2006, 17h43

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