PhantomJS - Objekt

In diesem Kapitel werden wir uns die vier wichtigen Objekte PhantomJS ansehen. Sie sind wie folgt -

  • CookiesEnabled
  • Cookies
  • LibraryPath
  • Version

Lassen Sie uns nun jeden dieser Punkte im Detail besprechen.

CookiesEnabled

Hier erfahren Sie, ob die Cookies aktiviert sind oder nicht. Es wird zurückkehrentrue, Falls ja; Andernfallsfalse.

Syntax

Die Syntax lautet wie folgt:

phantom.cookiesEnabled

Beispiel

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();

Ausgabe

Command - phantomjs cookieenabled.js

Cookie Enabled value is : true

Kekse

Es hilft, Cookies zu einer Domain hinzuzufügen und zu setzen. Es gibt ein Objekt mit allen für die Domain verfügbaren Cookies zurück.

Syntax

Die Syntax lautet wie folgt:

phantom.cookies;

Beispiel

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();

Ausgabe

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"}]

Im obigen Beispiel haben wir der localhost-Domain einige Cookies hinzugefügt. Wir haben es dann mit abgerufenphantom.cookies. Es gibt ein Objekt mit allen Cookies zurück, indem es das verwendetJSON stringifyMethode zum Konvertieren des JavaScript-Objekts in eine Zeichenfolge. Sie können auch verwendenforeach um auf den Namen / die Werte der Cookies zuzugreifen.

LibraryPath

PhantomJS libraryPath speichert den Skriptpfad, der von der verwendet werden soll injectJS Methode.

Syntax

Die Syntax lautet wie folgt:

phantom.libraryPath

Beispiel

Hier ist ein Beispiel, um die Version herauszufinden.

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;
};

Das obige Programm generiert Folgendes output.

Jquery Tutorial

Ausführung

Es gibt die Version des laufenden PhantomJS an und gibt die Details in einem Objekt zurück. Zum Beispiel: {"major": 2, "minor": 1, "patch": 1}

Syntax

Die Syntax lautet wie folgt:

phantom.version

Beispiel

Hier ist ein Beispiel, um die Version herauszufinden.

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

Das obige Programm generiert Folgendes output.

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

Im obigen Beispiel haben wir verwendet console.logum die Version zu drucken. Derzeit wird Version 2 ausgeführt. Das Objekt wird mit den im obigen Codeblock angegebenen Details zurückgegeben.