PhantomJS 四大核心对象详解:Cookies、LibraryPath、Version


发布日期 : 2023-06-22 13:14:38 UTC

访问量: 10 次浏览

PhantomJS 对象

在本章中,我们将看一下PhantomJS的四个重要对象。它们如下:

  • CookiesEnabled
  • Cookies
  • LibraryPath
  • Version

现在让我们详细讨论每一个对象。

cookiesEnabled

它告诉我们cookies是否启用。如果启用,将返回 true ,否则返回 false

语法

它的语法如下 −

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

Cookies

它有助于为域名添加和设置cookie。 它返回一个包含在该域名下所有可用cookie的对象。

语法

它的语法如下 –

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

在上面的示例中,我们向localhost域添加了一些cookie。然后,我们使用 phantom.cookies 来获取它。它通过使用 JSON stringify 方法将JavaScript对象转换为字符串,返回一个包含所有cookie的对象。您也可以使用 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

version

它提供了运行的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。它返回包含上述代码块中显示的详细信息的对象。