Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2982 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  Aperçus de plusieurs sites dans une seule page

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Aperçus de plusieurs sites dans une seule page

n°2187192
klitzounet
Posté le 23-04-2013 à 14:24:12  profilanswer
 

Bonjour à tous,
 
Cela fait 2 jours que je passe mon temps à chercher des infos sur les forums mais je ne trouve rien qui fonctionne dans mon cas :( je m'explique :
 
J'aimerai développer une page web regroupant l'aperçu de plusieurs sites (une sorte de portail), mais dont le contenu de la fenêtre de chaque site soit à l'échelle (un dézoom de tout le site et non  juste le coin en haut à gauche). En fait, faire comme Chrome ou Firefox à l'ouverture d'un nouvel onglet, quand ils nous proposent les sites les plus consultés (en fait j'aimerai faire exactement ça : http://zdnet.fr/i/edit/39382993/go [...] age-06.jpg mais en ligne)
 
J'ai déjà tenté avec les Iframes, mais si je veux des petites fenêtres de 300*120 par exemple, je n'ai que le coin en haut à gauche du site contenu dans la iframe, et non un aperçu global.
Le redimensionnement à l'intérieur de l'iframe n'est pas possible par Javascript car les sites pointés ne sont pas sur le même domaine (donc ça n'est pas possible avec javascript) pour des raisons de sécurité).
 
J'ai également cherché côté PHP, ou j'ai trouvé la fonction file_get_contents($url) (http://php.net/manual/fr/function. [...] ntents.php) très performante puisqu'elle aspire le contenu d'une page en une ligne, mais je n'arrive pas ensuite à redimensionner ce contenu à la taille de ma petite fenêtre d'aperçu. J'ai trouvé également la possibilité d'utiliser la fonction Curl (http://www.dinduks.com/tutoriel-re [...] avec-curl/) qui fait la même chose, donc même problème.
 
J'ai ensuite tenté en JEE avec la classe URLConnection (http://docs.oracle.com/javase/tuto [...] iting.html) mais je n'arrive pas à passer le proxy car mon réseau passe par un script qui gère automatiquement le proxy. J'ai cherché aussi du côté HttpClient (http://hc.apache.org/httpcomponent [...] start.html) mais il est plus difficile à comprendre et j'ai peur d'arriver au même résultat.
 
Et pour finir, j'ai également pensé à générer des vignettes (images) de sites pour pouvoir facilement les redimensionner, par exemple avec le canvas.toDataUrl() (http://stackoverflow.com/questions [...] pg-png-pdf) mais les canvas ne sont pas compatibles avec IE.
 
 
Quelqu'un aurait-il une idée supplémentaire ?  :)  :sarcastic:  
Je vous remercie d'avance !!

mood
Publicité
Posté le 23-04-2013 à 14:24:12  profilanswer
 

n°2187688
klitzounet
Posté le 26-04-2013 à 12:29:39  profilanswer
 

Pas d'idées créatives...?  :ange:

n°2187694
gelatine_v​elue
Posté le 26-04-2013 à 13:07:57  profilanswer
 

Ta dernier solution est a mon avis la bonne, avec une librairie pour les probleme IE, comme : http://code.google.com/p/explorercanvas/downloads/list

n°2187708
klitzounet
Posté le 26-04-2013 à 14:06:31  profilanswer
 

C'est gentil d'avoir répondu !
J'essaye donc de suivre cette piste là mais finalement j'ai l'impression que Canvas n'est utile que pour dessiner des formes à l'intérieur, et que coller du contenu htlm dedans n'a pas l'air possible... ce qui me pose problème.
Confirme-tu ?

n°2187710
gelatine_v​elue
Posté le 26-04-2013 à 14:14:17  profilanswer
 

klitzounet a écrit :

C'est gentil d'avoir répondu !
J'essaye donc de suivre cette piste là mais finalement j'ai l'impression que Canvas n'est utile que pour dessiner des formes à l'intérieur, et que coller du contenu htlm dedans n'a pas l'air possible... ce qui me pose problème.
Confirme-tu ?


 
Je confirme a priori. Je pensais que tu avais une idée  de la manière de faire. Pour servir des miniatures de sites côté client il faut les générer côté serveur et donc:
 
- récupérer  le code source de la page côté serveur (avec curl par ex, ou php...)
- Donner cela à un moteur de rendu côté serveur, comme webkit2png ou khtml2png (Il y en a peut-être d'autres)  
- Afficher l'image.
 
Voila pour faire simple amha.
 
 

n°2187718
klitzounet
Posté le 26-04-2013 à 14:35:46  profilanswer
 

La première étape de récupération du contenu c'est bon je l'ai.
Pour la deuxième je suis allé voir comme tu m'as dis :  
 - webkit2png : si j'ai bien compris, il utilise le moteur webkit de safari pour générer en ligne de commande la miniature d'un site (sans être passé par la 1ere étape de récup de contenu). En tout cas le rendu est génial !
 - khtml2png : si j'ai bien compris encore une fois, il utilise les librairies de Konqueror pour exécuter des scripts Python encore une fois en ligne de commande.
 
Donc tout cela doit être fait côté serveur par une personne qui appuie sur un "bouton" pour lancer le script à une heure précise qui va récupérer des screenshot à une heure précise aussi ?
Pas de possibilité de génération de screenshot "à la volée" à l'ouverture d'une page web par n'importe quel utilisateur ? :/  :(  
 
Je te remercie encore

n°2187720
gelatine_v​elue
Posté le 26-04-2013 à 14:39:21  profilanswer
 

klitzounet a écrit :

La première étape de récupération du contenu c'est bon je l'ai.
Pour la deuxième je suis allé voir comme tu m'as dis :  
 - webkit2png : si j'ai bien compris, il utilise le moteur webkit de safari pour générer en ligne de commande la miniature d'un site (sans être passé par la 1ere étape de récup de contenu). En tout cas le rendu est génial !
 - khtml2png : si j'ai bien compris encore une fois, il utilise les librairies de Konqueror pour exécuter des scripts Python encore une fois en ligne de commande.
 
Donc tout cela doit être fait côté serveur par une personne qui appuie sur un "bouton" pour lancer le script à une heure précise qui va récupérer des screenshot à une heure précise aussi ?
Pas de possibilité de génération de screenshot "à la volée" à l'ouverture d'une page web par n'importe quel utilisateur ? :/  :(  
 
Je te remercie encore


 
Ben si: quand tu appelles ton url, ca exécute un script php côté serveur. Où qu'il soit sur ton serveur, depuis ce script tu appelles l'exe en ligne de commande à l'aide de la fonction system (http://php.net/manual/fr/function.system.php). Ca genère un png à l'endroit que tu lui spécifie. T'as plus qu'a créer un tag img toujours en php avec en src le lien de l'image et le tour est joué (en théorie) :o


Message édité par gelatine_velue le 26-04-2013 à 14:39:52
n°2187721
klitzounet
Posté le 26-04-2013 à 14:47:23  profilanswer
 

Merci beaucoup !  :jap:  
Je pense qu'avec ça je devrais réussir !! En plus ça permet une indépendance du navigateur donc compatible partout on peut pas demander mieux :)
 
Bon après midi à toi merci de t'être plongé là-dedans


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  Aperçus de plusieurs sites dans une seule page

 

Sujets relatifs
Regler la hauteur de la page selon le contenuProgrammer impression en bloc de la page 7 de 100 fichiers HTM offline
Problème de mise en page selon le navigateur[Résolu] Tableau à plusieurs colonnes
executer une page .php en fond[VBA] Savoir si n'importe quel caractère défini est plusieurs fois...
[HTML] only - page web en local modifiable par le visiteurAide pour faire suivre un select case sur plusieurs cellules
Modèle de Page web Contact ?Page de connexion pour radius
Plus de sujets relatifs à : Aperçus de plusieurs sites dans une seule page


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR