5 votes

Comment puis-je faire une capture d'écran complète d'un site web ?

J'ai besoin d'obtenir une image plein écran d'un site web par URL, existe-t-il des programmes PHP pour cela ou des services, sinon, existe-t-il des programmes Java pour cela ?

6voto

Kane Points 722

3voto

null Points 3159

Vous devez disposer d'une version spéciale du navigateur pour "rendre" la page. après il est traité par PHP ou Java.

Vous aurez très probablement besoin de mettre en place des scripts d'automatisation personnalisés pour frapper une URL après avoir fait un ping sur un serveur fonctionnant sous Windows, OSX ou un gestionnaire de fenêtres Linux.

Il existe des services qui réalisent des captures d'écran pour vous.

http://www.browsercam.com

http://webthumb.bluga.net/home

pour n'en citer que quelques-uns.

3voto

rahulserver Points 1347

La meilleure solution pour moi : Utiliser webdriver sélénium Et faire une capture d'écran peut être aussi simple que este :

import java.io.File;
import java.net.URL;

import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.Augmenter;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;

public class Testing {

    public void myTest() throws Exception {
        WebDriver driver = new RemoteWebDriver(
                                new URL("http://localhost:4444/wd/hub"), 
                                DesiredCapabilities.firefox());

        driver.get("http://www.google.com");

        // RemoteWebDriver does not implement the TakesScreenshot class
        // if the driver does have the Capabilities to take a screenshot
        // then Augmenter will add the TakesScreenshot methods to the instance
        WebDriver augmentedDriver = new Augmenter().augment(driver);
        File screenshot = ((TakesScreenshot)augmentedDriver).
                            getScreenshotAs(OutputType.FILE);
    }
}

N'oubliez pas d'utiliser FireFoxDriver. HtmlUnitDriver ne fonctionnera pas de cette façon car il est sans tête.

Doucement !

2voto

Twisol Points 1061

Litmus est une excellente ressource en ligne pour ce genre de choses ; vous pouvez soumettre une URL et obtenir des captures d'écran pleine page sur les derniers navigateurs. Si vous souscrivez à un abonnement payant ou si vous l'utilisez le week-end, vous aurez accès au test sur l'ensemble de ses 22 navigateurs et non plus seulement sur le plus récent. J'utilise ce site web en permanence, je le trouve phénoménal.

BrowserShots est également excellent, et il prend en charge des tonnes de navigateurs supplémentaires, mais d'après mon expérience, il est aussi beaucoup plus lent. Il est bon de l'utiliser si vous besoin de pour tester certains navigateurs que Litmus ne fait pas, cependant.

0voto

CSRenA Points 123

Vous pouvez également le faire vous-même si vous disposez d'un serveur dédié. L'idée est de lancer un serveur X et un navigateur en mode plein écran, de prendre une photo et de l'enregistrer dans un fichier image.

En fonction de votre utilisation (occasionnelle ou intensive), vous pouvez adapter le processus (c'est-à-dire ne pas tuer X à chaque fois, etc...) pour le rendre plus rapide.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X