PhantomJS : capture d'écrans sont noires

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par sff, 21 Mars 2017.

  1. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Bonjour,

    j'ai un problème avec PhantomJS. En effet, j'utilise la commande proxy pour faire des captures d'écran sur des sites avec ceci : --proxy=leproxyici

    Mon problème : La plupart du temps les capture d'écrans sont toute noires, ou avec une ligne au haut. Tout dépends du proxy utilisé. Avec certains cela fonctionne parfaitement et avec d'autres non.

    Capture toute noire :

    [​IMG]

    Capture avec une ligne en haut :

    [​IMG]

    Voici ma ligne de commande :

    Code:
    /var/www/phantomjs/bin/phantomjs --proxy=125.141.200.46:80 --debug=true /var/www/screen.js http://www.urldusite.com /var/www/screens/image.jpg
    Voici mon fichier screen.js :

    Code:
    "use strict";
    var page = require('webpage').create(),
    system = require('system'),
    address, output, ref, user_agent;
    
    address = system.args[1];
    output = system.args[2];
    ref = system.args[3];
    user_agent = system.args[4];
    
    page.settings.userAgent = user_agent;
    page.zoomFactor = 0.25;
    
    var settings = {
    headers: {
    		"Referer": ref
    	}
    };	
    
    page.open(address, settings, function () {
    	
    	page.render(output, {format: 'jpeg', quality: '100'});
    	phantom.exit();
    
    });
    Dans les logs j'ai cette erreur :

    Code:
    2017-03-20T14:26:44 [DEBUG] Network - Resource request error: QNetworkReply::Net workError(ContentNotFoundError) ( "Error downloading http://urldusiteici.fr/ - server replied: Not Found" ) URL: "http://urldusiteici.fr/"
    J'ai essayé plusieurs site par proxy et le résultat est le même, j'ai également essayé de changer de format et d'extension d'image (PNG par exemple) mais c'est la même chose. Le problème c'est que quelques chose empêche le chargement de la page du site ce qui engendre une capture toute noire. Mais qu'est ce qui empêche le chargement de la page ? Le proxy ou un code ?

    Merci pour vos réponses
     
  2. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    8 811
    J'aime reçus:
    242
    Dans ton code: 1) aucun check si la page a bien été ouverte, 2) aucun délai avant le screenshot
    Cfr: rasterize.js
    C'est p-e pas ça, mais une piste.
     
  3. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Merci pour Spout pour ta réponse, mais j'ai déja essayé le fichier rasterize.js à la place de screen.js et j'ai exactement le meme problème. C'est pas un problème de delais pour le screenshot, ni de fichier, c'est l'url qui ne se charge pas du tout avec certains proxy.
     
  4. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    La question est de savoir pourquoi ? Et pourquoi j'ai une ligne blanche sur certaines captures ?
     
  5. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Certains proxy me donnent cette erreur :

    Code:
    2017-03-21T20:27:01 [DEBUG] Network - Resource request error: QNetworkReply::Net                                                                                                                               workError(ProxyAuthenticationRequiredError) ( "Proxy requires authentication" )                                                                                                                                URL: "http://www.ffreload.com/"
    2017-03-21T20:27:01 [DEBUG] Network - Resource request error: QNetworkReply::Net                                                                                                                               workError(ProxyAuthenticationRequiredError) ( "Proxy requires authentication" )                                                                                                                                URL: "http://www.squid-cache.org/Artwork/SN.png"
    avec cette capture :
    [​IMG]
     
  6. sff
    sff WRInaute impliqué
    Inscrit:
    2 Février 2005
    Messages:
    525
    J'aime reçus:
    0
    Avec d'autres :

    [​IMG]

    Log :

    Code:
    root@vps-21226:~# /var/www/phantomjs/bin/phantomjs --proxy=54.187.52.159:443 --proxy-type=http --proxy-auth=username:password --debug=true /var/www/screen.js http://www.ffreload.com /var/www/screens/imag22.jpg
    2017-03-21T20:51:18 [DEBUG] CookieJar - Created but will not store cookies (use option '--cookies-file=<filename>' to enable persistent cookie storage)
    2017-03-21T20:51:18 [DEBUG] Set  "http"  proxy to:  "54.187.52.159" : 443
    2017-03-21T20:51:18 [DEBUG] Phantom - execute: Configuration
    2017-03-21T20:51:18 [DEBUG]      0 objectName : ""
    2017-03-21T20:51:18 [DEBUG]      1 cookiesFile : ""
    2017-03-21T20:51:18 [DEBUG]      2 diskCacheEnabled : "false"
    2017-03-21T20:51:18 [DEBUG]      3 maxDiskCacheSize : "-1"
    2017-03-21T20:51:18 [DEBUG]      4 diskCachePath : ""
    2017-03-21T20:51:18 [DEBUG]      5 ignoreSslErrors : "false"
    2017-03-21T20:51:18 [DEBUG]      6 localUrlAccessEnabled : "true"
    2017-03-21T20:51:18 [DEBUG]      7 localToRemoteUrlAccessEnabled : "false"
    2017-03-21T20:51:18 [DEBUG]      8 outputEncoding : "UTF-8"
    2017-03-21T20:51:18 [DEBUG]      9 proxyType : "http"
    2017-03-21T20:51:18 [DEBUG]      10 proxy : "54.187.52.159:443"
    2017-03-21T20:51:18 [DEBUG]      11 proxyAuth : "username:password"
    2017-03-21T20:51:18 [DEBUG]      12 scriptEncoding : "UTF-8"
    2017-03-21T20:51:18 [DEBUG]      13 webSecurityEnabled : "true"
    2017-03-21T20:51:18 [DEBUG]      14 offlineStoragePath : ""
    2017-03-21T20:51:18 [DEBUG]      15 localStoragePath : ""
    2017-03-21T20:51:18 [DEBUG]      16 localStorageDefaultQuota : "-1"
    2017-03-21T20:51:18 [DEBUG]      17 offlineStorageDefaultQuota : "-1"
    2017-03-21T20:51:18 [DEBUG]      18 printDebugMessages : "true"
    2017-03-21T20:51:18 [DEBUG]      19 javascriptCanOpenWindows : "true"
    2017-03-21T20:51:18 [DEBUG]      20 javascriptCanCloseWindows : "true"
    2017-03-21T20:51:18 [DEBUG]      21 sslProtocol : "default"
    2017-03-21T20:51:18 [DEBUG]      22 sslCiphers : "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-RC4-SHA:ECDHE-RSA-RC4-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:RC4-SHA:RC4-MD5"
    2017-03-21T20:51:18 [DEBUG]      23 sslCertificatesPath : ""
    2017-03-21T20:51:18 [DEBUG]      24 sslClientCertificateFile : ""
    2017-03-21T20:51:18 [DEBUG]      25 sslClientKeyFile : ""
    2017-03-21T20:51:18 [DEBUG]      26 sslClientKeyPassphrase : ""
    2017-03-21T20:51:18 [DEBUG]      27 webdriver : ":"
    2017-03-21T20:51:18 [DEBUG]      28 webdriverLogFile : ""
    2017-03-21T20:51:18 [DEBUG]      29 webdriverLogLevel : "INFO"
    2017-03-21T20:51:18 [DEBUG]      30 webdriverSeleniumGridHub : ""
    2017-03-21T20:51:18 [DEBUG] Phantom - execute: Script & Arguments
    2017-03-21T20:51:18 [DEBUG]      script: "/var/www/screen.js"
    2017-03-21T20:51:18 [DEBUG]      0 arg: "http://www.ffreload.com"
    2017-03-21T20:51:18 [DEBUG]      1 arg: "/var/www/screens/imag22.jpg"
    2017-03-21T20:51:18 [DEBUG] Phantom - execute: Starting normal mode
    2017-03-21T20:51:18 [DEBUG] WebPage - setupFrame ""
    2017-03-21T20:51:18 [DEBUG] FileSystem - _open: ":/modules/fs.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:18 [DEBUG] FileSystem - _open: ":/modules/system.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:18 [DEBUG] FileSystem - _open: ":/modules/webpage.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:18 [DEBUG] WebPage - updateLoadingProgress: 10
    2017-03-21T20:51:18 [DEBUG] CookieJar - Saved "WR_PROXY_AUTH=807FABEA59B2B7DDD8D886156F1AB184; domain=.ffreload.com; path=/"
    2017-03-21T20:51:19 [DEBUG] CookieJar - Saved "WR_PROXY_AUTH=807FABEA59B2B7DDD8D886156F1AB184; domain=.ffreload.com; path=/"
    2017-03-21T20:51:19 [DEBUG] CookieJar - Saved "WR_PROXY_AUTH=807FABEA59B2B7DDD8D886156F1AB184; expires=Sun, 21-Mar-2117 19:51:16 GMT; domain=.webroot.com; path=/"
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 50
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 50
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 62
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 66
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 100
    2017-03-21T20:51:19 [DEBUG] WebPage - setupFrame ""
    2017-03-21T20:51:19 [DEBUG] WebPage - setupFrame ""
    2017-03-21T20:51:19 [DEBUG] WebPage - setupFrame ""
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 10
    2017-03-21T20:51:19 [DEBUG] WebPage - setupFrame ""
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 100
    2017-03-21T20:51:19 [DEBUG] WebPage - setupFrame ""
    2017-03-21T20:51:19 [DEBUG] FileSystem - _open: ":/modules/fs.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:19 [DEBUG] FileSystem - _open: ":/modules/system.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:19 [DEBUG] FileSystem - _open: ":/modules/webpage.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 10
    2017-03-21T20:51:19 [DEBUG] WebPage - setupFrame ""
    2017-03-21T20:51:19 [DEBUG] FileSystem - _open: ":/modules/fs.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:19 [DEBUG] FileSystem - _open: ":/modules/system.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:19 [DEBUG] FileSystem - _open: ":/modules/webpage.js" QMap(("mode", QVariant(QString, "r")))
    2017-03-21T20:51:19 [DEBUG] WebPage - updateLoadingProgress: 100
    2017-03-21T20:51:19 [DEBUG] CookieJar - Purged (session) "WR_PROXY_AUTH=807FABEA59B2B7DDD8D886156F1AB184; domain=.ffreload.com; path=/"
    2017-03-21T20:51:19 [DEBUG] CookieJar - Saved "WR_PROXY_AUTH=807FABEA59B2B7DDD8D886156F1AB184; expires=Sun, 21-Mar-2117 19:51:16 GMT; domain=.webroot.com; path=/"
     
Chargement...
Similar Threads - PhantomJS capture écrans Forum Date
PhantomJs : cliquer quelques part avant un screenshot Développement d'un site Web ou d'une appli mobile 17 Février 2017
Problème avec PhantomJS Développement d'un site Web ou d'une appli mobile 16 Février 2017
Référencement Google AJAX, AngularJS, PhantomJS Crawl et indexation Google, sitemaps 30 Mars 2015
Capturer miniature image soundcloud Développement d'un site Web ou d'une appli mobile 1 Juillet 2019
Capture miniature Youtube YouTube, Google Images et Google Maps 26 Juin 2019
Prendre capture écran en php sans passer par un serveur Développement d'un site Web ou d'une appli mobile 25 Janvier 2017
Nouveau annuaire avec capture d'ecran de votre site Annuaires et moteurs 23 Novembre 2013
Ma première capture video écran Développement d'un site Web ou d'une appli mobile 23 Septembre 2013
les captures d'écran dans Google datent... Crawl et indexation Google, sitemaps 19 Avril 2013
Capture d'une partie de l'écran Développement d'un site Web ou d'une appli mobile 24 Janvier 2013
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice