ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Capturer une page web sous forme d'une seule image   



L'auteur

ybenam
Algérie Algérie
Membre Simple
# 0000002080
enregistré le 21/04/2008


Fiche personnelle


Note des membres
pas de note

Contributions > 09 - Automation > Internet Explorer

Capturer une page web sous forme d'une seule image
# 0000000587
ajouté le 28/05/2008 01:31:33 et modifié le 19/06/2008
consulté 10961 fois
Niveau initié

Version(s) Foxpro :
VFP 6.0


Télécharger le ZIP (50.62 Ko)
Description
Le problème est de télécharger une page Web complète sous form d'image (Jpg,gif,png,tiff
ou même Bmp) et de la stocker sur disque pour consultation.
Le but de l'opération étant de se débarrasser des fichiers (multitudes d'images,scripts
( bons ou nuisibles),dossier auxiliaire web,.... obtenus avec IE/SAVEAS)
et devoir sur une image tout ce qui est visible de la totalité de la page à l'écran .
Alors ce programme que j'ai réalisé s'articule comme suit:
-test connection internet
-Ouverture de la page désirée +sélection et copie dans le presse papier.(internet explorer doit
être présent sur la station ici invisible)
-fermeture de la page Web
-Copie du contenu du PP dans une page WEB.ici il faut souligner une nouveauté importante qui
est l'éditabilité d'Internet explorer.
-Ouverture de cette page ,placement au sommet, et scroll rapide par écran avec capture
(Bienheureusement GDI+ représentée par GpImage ci jointe pour VFP6.0, fait l'affaire.)
Ici IE doit être obligatoirement visible pour la capture (0.1 s par écran env.) puis quitté.
-Recollage des images en une seule image avec artifice de collage pour ne rien laisser paraître
des traits de séparation.
-Destruction de ces images temporaires.
-Affichage de l'image de la page web (zoomer pour bien admirer)+message d'informations(
alternative IE du messagebox de VFP)
Le message (Atoufox n'affiche pas les images!) est comme suit pour un grand téléchargement de
78 écrans (avec un message de mémoire insuffisante de windows- ma RAM=225 Mo) :
(voir image du zip)
-----------------------------------------------------------------------------------
Informations sur le processus de capture de la page Web
Url=http://www.west-wind.com/presentations/shellapi/shellapi.asp
Temps de chargement/recopie Url=32 sec.
Temps de constitution image [C:\YSNAP_WEB\ydownload.jpg] =248 sec.
Temps total =280 sec.
Largeur image=1007 px
Hauteur image=59417 px
Taille image=9569615 Octets
78 Ecrans capturés
Liaison personnelle internet utilisée pour test :128 kb/s
Zoomer pour lire l'image (ou visualiser dans MsPaint).
Version:Visual FoxPro 06.00.8167.00 pour Windows [Jun 16 1998 08:27:50] Numéro de série
83976-000-0000000-52508
benameuryousfi1@gmail.com 26/05/2008 19:29:40 -------------------------------------------------------------------------------
Pour le images JPG,le taux de compression choisi est de 80% et peut être modifié dans le programme.
Avec quelques aménagements élémentaires ,ce programme peut de même traiter les URL stockées sur le
disque du PC.
Je viens juste de me raccorder à l'internet Haut débit (128 kb/s quand même !) ,de réaliser ce programme et
de lui faire subir les tests....
C'est beau l'internet !
Quelqu'un aurait il une idée de transformer le contenu du ClipBoard en image (API éventuelle pour éviter de
rendre visible Iexplore lors de la capture ?)-Email me SVP !
Commentaires
le 28/05/2008, ybenam a écrit :
Le composant ci dessus concatène le texte collé et lui donne un aspect inoportun.Le Webmaster devrait peut être réfléchir à le changer par un composant qui gère les retours à la ligne...
une peite correction a été apportée ce jour même pour mettre la fenêtre IE au top(empêcher les recouvrements par d'autres éventuelles fenêtres lors de la capture).il en est de même pour cacher la barre d'outils système...Si vous en avez d'autres masquez les ...!

le 08/06/2008, ybenam a écrit :
*Une alternative au téléchargement d'une page web sous forme d'image .....téléchargement et enregistrement sous Archive web MHT.

xURL="http://www.atoutfox.org/"
_screen.visible=.f.
apIE=createObject('internetexplorer.application')
apIE.navigate(xURL)
apIE.visible=.f.

do while apIE.busy or apIE.readystate#4
enddo
inkey(1)
apIE.execWB(4,0) &&boite de dialogue avec tous les choixpossibles yc MHT
*MHT archive web sauvegarde la page yc les images en un seul fichier...le dossier auxiliaire n'est plus nécessaire.
_screen.visible=.t.
//////////////////////////////ou encore avec automation CDO/////////////////////////
lcDest = Sys(2015)+'.mht'
xURl="http://www.atoutfox.org/"
oMSG = Createobject("CDO.Message")
oMSG.CreateMHTMLBody(xURL)
x=OMSG.getStream
x.SaveToFile(lcDest,1) && Sauvegarder le document en archive web MHT.
//////////////////////////////////////////////////////
et vous avez la page web en un seul fichier.


www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3