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