PhantomJS - Objet

Dans ce chapitre, nous examinerons les quatre objets importants PhantomJS. Ils sont les suivants -

  • CookiesEnabled
  • Cookies
  • LibraryPath
  • Version

Examinons maintenant chacun de ces éléments en détail.

cookiesEnabled

Il indique si les cookies sont activés ou non. Il reviendratrue, si oui; autrementfalse.

Syntaxe

Sa syntaxe est la suivante -

phantom.cookiesEnabled

Exemple

cookieenabled.js

phantom.addCookie ({  
   //adding cookie with addcookie property 
   name: 'c1', 
   value: '1', 
   domain: 'localhost' 
}); 

console.log("Cookie Enabled value is : "+phantom.cookiesEnabled); 
phantom.exit();

Production

Command - cookie phantomjsenabled.js

Cookie Enabled value is : true

Biscuits

Cela permet d'ajouter et de définir des cookies sur un domaine. Il renvoie un objet avec tous les cookies disponibles pour le domaine.

Syntaxe

Sa syntaxe est la suivante -

phantom.cookies;

Exemple

Filename: phantomcookie.js

phantom.addCookie ({ 
   name: 'c1', 
   value: '1', 
   domain: 'localhost' 
}); 
phantom.addCookie ({ 
   name: 'c2', 
   value: '2', 
   domain: 'localhost' 
}); 
phantom.addCookie ({ 
   name: 'c3', 
   value: '3', 
   domain: 'localhost' 
}); 
console.log(JSON.stringify(phantom.cookies)); 
phantom.exit();

Production

Command - phantomjs phantomcookie.js

[{"domain":".localhost","httponly":false,"name":"c3","path":"/","secure":false, " 
value":"3"},{"domain":".localhost","httponly":false,"name":"c2","path":"/","sec u 
re":false,"value":"2"},{"domain":".localhost","httponly":false,"name":"c1","pat h
":"/","secure":false,"value":"1"}]

Dans l'exemple ci-dessus, nous avons ajouté des cookies au domaine localhost. Nous l'avons ensuite récupéré en utilisantphantom.cookies. Il renvoie un objet avec tous les cookies en utilisant leJSON stringifyméthode pour convertir l'objet JavaScript en une chaîne. Vous pouvez aussi utiliserforeach pour accéder au nom / aux valeurs des cookies.

LibraryPath

PhantomJS libraryPath stocke le chemin du script à utiliser par le injectJS méthode.

Syntaxe

Sa syntaxe est la suivante -

phantom.libraryPath

Exemple

Voici un exemple pour connaître la version.

var webPage = require('webpage');
var page = webPage.create();

page.open('http://www.tutorialspoint.com/jquery', function(status) {
   if (status === "success") { 
      page.includeJs('http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js ', function() { 
         if (page.injectJs('do.js')) { 
            // returnTitle is a function loaded from our do.js file - see below 
            return returnTitle(); 
         });
         
         console.log(title); 
         phantom.exit(); 
      } 
   } 
});

window.returnTitle = function() { 
   return document.title;
};

Le programme ci-dessus génère les éléments suivants output.

Jquery Tutorial

Version

Il donne la version du PhantomJS en cours d'exécution et renvoie les détails dans un objet. Par exemple: {"major": 2, "minor": 1, "patch": 1}

Syntaxe

Sa syntaxe est la suivante -

phantom.version

Exemple

Voici un exemple pour connaître la version.

var a = phantom.version;
console.log(JSON.stringify(a));
console.log(a.major);
console.log(a.minor);
console.log(a.patch);
phantom.exit();

Le programme ci-dessus génère les éléments suivants output.

{"major":2,"minor":1,"patch":1} 
2 
1 
1

Dans l'exemple ci-dessus, nous avons utilisé console.logpour imprimer la version. Actuellement, nous fonctionnons sur la version 2. Il retourne l'objet avec les détails indiqués dans le bloc de code ci-dessus.