PhantomJS保持缓存

时间:2014-04-30 14:34:03

标签: javascript phantomjs

我正在使用幻影js来测试访问网页,这在大约半小时的时间内运行大约350次。然后我在服务器上运行webalizer来测试页面访问。

我的幻像js客户端位于幻像js的1个实例中,因此它基本上起作用,即一旦一个客户端打开网页就开始下一个客户端,所有客户端都有各自的IP地址和MAC地址。

然而,我在webalizer中发现的是,当我得到350次点击到服务器时,我只得到每个phantomjs实例1次点击我在一些css文件和其他文件上运行。所以我想出了将客户端缓存在一起的想法。

我在调用幻像js实例时尝试运行--max-disk-cache-size = 0,但仍然看到它的行为相同。

之前有没有人经历过同样的事情?

2 个答案:

答案 0 :(得分:18)

page.clearMemoryCache();清除缓存之前运行page.open

它在this issue中提到过,它在PhantomJS 2.0中运行良好。

答案 1 :(得分:0)

无法清除缓存(内存或磁盘)。几个月后github here就出现了一个问题,我仍然希望将来会发布这个问题。

这唯一的方法是启动没有磁盘缓存的新的phantomjs实例。

PhantomJs是一个无头浏览器,因此请将PhantomJS实例视为唯一用户。在您喜欢的浏览器中打开相同网页100次会在网页的每个资源上下载100次吗?不,这正是PhantomJS的工作方式。