CasperJS脚本完成后删除cookie文件

时间:2014-09-03 10:17:56

标签: javascript file phantomjs casperjs fs

我想使用fs库在我的脚本开头创建一个文件,并在最后删除它。 cookies.txt文件在开头创建,但在脚本末尾没有删除..

phantom.cookiesEnabled = true;
var fs = require('fs');
var cookies = JSON.stringify(phantom.cookies);
fs.write("cookies.txt", cookies, 777); // THIS WORKS !!

casper.start('http://google.fr/', function(){
    this.viewport(320, 480);
});
// my script ....
casper.then(function(){
    fs.remove("cookies.txt"); // THIS NOT WORKS !!
});
casper.run(function() {
    this.test.done();
    this.exit();
});

我编写的用于启动脚本的命令

casperjs test lbc.js --cookies-file=cookies.txt --web-security=no

1 个答案:

答案 0 :(得分:1)

它有效,但它发生得如此之快,以至于你无法看到它真的有效。

使用cookies-file选项启动casper(请参阅docs)。这意味着您希望在脚本退出后将Cookie保留在下次调用时使用它们。

当您exit casper(以及幻像)时,cookie文件将写入磁盘,但是在您使用fs.remove("cookies.txt");删除文件后会发生这种情况。所以文件实际上被删除然后重写。

问题是,你想做什么?