Учебники

PhantomJS — Объект

В этой главе мы рассмотрим четыре важных объекта PhantomJS. Они заключаются в следующем —

  • CookiesEnabled
  • Печенье
  • LibraryPath
  • Версия

Давайте теперь обсудим каждый из них в деталях.

cookiesEnabled

Он сообщает, включены ли файлы cookie или нет. Он вернет истину , если да; иначе ложно .

Синтаксис

Его синтаксис выглядит следующим образом —

phantom.cookiesEnabled

пример

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

Выход

Команда — phantomjs cookieenabled.js

Cookie Enabled value is : true 

Печенье

Помогает добавлять и устанавливать куки в домен. Возвращает объект со всеми куки, доступными для домена.

Синтаксис

Его синтаксис выглядит следующим образом —

phantom.cookies; 

пример

Имя файла: 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();

Выход

Команда — 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"}]

В приведенном выше примере мы добавили несколько файлов cookie в домен localhost. Затем мы получили его, используя phantom.cookies . Он возвращает объект со всеми файлами cookie, используя метод stringify JSON для преобразования объекта JavaScript в строку. Вы также можете использовать foreach для доступа к имени / значению файлов cookie.

LibraryPath

PhantomJS libraryPath хранит путь к сценарию, который будет использоваться методом injectJS .

Синтаксис

Его синтаксис выглядит следующим образом —

phantom.libraryPath 

пример

Вот пример, чтобы узнать версию.

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

Вышеуказанная программа генерирует следующий вывод .

Jquery Tutorial

Версия

Это дает версию PhantomJS, которая работает, и возвращает подробности в объекте. Например: {«major»: 2, «minor»: 1, «patch»: 1}

Синтаксис

Его синтаксис выглядит следующим образом —

phantom.version

пример

Вот пример, чтобы узнать версию.

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

Вышеуказанная программа генерирует следующий вывод .

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

В приведенном выше примере мы использовали console.log для печати версии. В настоящее время мы работаем над версией 2. Он возвращает объект с деталями, показанными в приведенном выше блоке кода.