在Windows上安装CasperJS:如何正确执行?

时间:2013-02-15 12:02:21

标签: windows phantomjs casperjs

我知道CasperJS网站上有关于如何在Windows上安装CasperJS的文档,但请注意这些人员仅针对专业人士进行了解释。

如果你是所有CasperJS和PhantomJS世界的新手,你就没有机会理解甚至花两天时间试图搜索网络以获得更好的解释。

我正在开发一个项目,需要我项目网站上列出的每个网站的屏幕截图,环顾四周我发现PhantomJS对于这项任务非常有用(网站截图)。

我下载了PhantomJS并将其phantomjs.exe文件粘贴到system32中,当我使用cmd.exe发送命令时,该文件效果很好。

我甚至设法只使用phantomjs.exe抓取屏幕截图。但是当我注意到当这两个工作在一起时(CasperJS和PhantomJS)工作负载可能会更容易,因为我甚至可以在使用CasperJS时减小屏幕截图的大小。

事实上,我想要CasperJS的唯一用途是限制镜头尺寸但是从昨天开始我一直试图弄清楚如何让CasperJS在Windows上工作但是没有用。

我已经下载了CasperJS,并尝试以多种方式安装它,同时尝试按照文档进行操作,但没有。

我将CasperJS文件夹名称从其下载名称更改为CasperJS,但是当我检查cmd尝试调用某些命令时,没有任何反应。

无论如何要剪切故事镜头,任何人都可以用简单的方式帮助我,因为我是一个新手来解释如何在窗口上安装CasperJS或者如果可能的话只使用PhantomJS我怎样才能重新调整程序生成的iamge的大小说如果我想要一个960到400px。

8 个答案:

答案 0 :(得分:63)

Windows的文档很差。 http://casperjs.org/installation.html#windows

假设您已经安装而没有告诉您如何安装,它就开始了。

所以在这里,如果其他人对此感到困惑。没有实际安装。它只是将zip内容提取到正确的位置。

  1. 从phantomjs网站下载windows的phantomjs(里面有二进制文件的拉链)
  2. 将内容提取到C:\ phantomjs
  3. 从casperjs网站下载casperjs zip文件
  4. 将内容提取到C:\ casperjs
  5. 现在,您可以将以下内容添加到系统或用户PATH变量

    的末尾

    ; C:\ phantomjs; C:\ casperjs \ batchbin

  6. 如果您运行的是Console2或Conemu终端模拟器,则重新启动cmd.exe以获取新路径变量或注销/登录(它们不会通过简单关闭并重新打开来获取新路径)

  7. 现在在文档中说它像这样运行它

    casperjs.bat myscript.js
    

    实际上,因为phantomjs.exe和casperjs.bat现在都在系统PATH中,所以你可以不加这样的扩展名。

    casperjs myscript.js
    

    运行phantomjs.exe时只需运行

    phantomjs
    

    还有一件事。只要将该路径添加到系统PATH,安装位置无关紧要。我安装到C:\ usr \ phantomjs和C:\ usr \ casperjs。

答案 1 :(得分:9)

我在我的个人Windows和Ubuntu工作PC上列出了满足我需求的方法。请注意我的方法并没有摆弄PATH设置,而是涉及一个可以保存在某处的命令。根据需要复制和粘贴:

第1步:收集先决条件

  • 下载您要使用的casperjs和phantomjs版本
  • 创建一个目录以包含我要列出的内容
  • 提取下载的phantomjs&将其可执行文件复制到步骤b
  • 目录中
  • 提取casperjs并将其文件夹重命名为 casperjs
  • 将重命名的 casperjs 文件夹复制到步骤b的目录
  • 创建文件 config.json 并将其保存到步骤b的目录
  • config.json 应包含此处的phantomjs配置:http://phantomjs.org/api/command-line.html

第2步:运行脚本

  • 每当您想使用文件时,请按照上面的第1步详细信息进行操作
  • 下一步假设您位于步骤中创建的目录中 b 第1步还有一个名为 first.js
  • 的文件
  • 在Windows上:phantomjs.exe --config = config.json casperjs / bin / bootstrap.js --casper-path = casperjs --cli first.js
  • 在Ubuntu上:./ elephantomjs --config = config.json casperjs / bin / bootstrap.js --casper-path = casperjs --cli first.js

实验 config.js first.js 如下:

<强> config.json

  

{“sslProtocol”:“any”,“cookiesFile”:“biscuit”,“maxDiskCacheSize”:1000,“diskCache”:true}

<强> first.js

var casper = require('casper').create({
    pageSettings: {
        loadImages: false,
        loadPlugins: true,
        userAgent: 'Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'
    }
});
var url = "http://casperjs.org/";

casper.start(url).wait(60 * 1000 * 1, function() {
     casper.echo('1 min has passed');
     casper.capture('casperjs.png');
     casper.exit();
});

casper.run();

附录:下载并保存screenshots.js的详细信息并将其另存为

  

phantomjs.exe --config = config.json casperjs / bin / bootstrap.js --casper-path = casperjs --cli screenshots.js http://phantomjs.org

运行测试:下载&amp;保存picturefill-test.js的详细信息并将其作为

运行
  

phantomjs.exe --config = config.json casperjs / bin / bootstrap.js   --casper-path = casperjs test --cli picturefill-test.js

答案 2 :(得分:7)

CasperJS 1.1.0-DEV Beta 3 开始,您应使用此路径C:\casperjs\batchbin,即使找到的文档here表明您需要使用C:\casperjs\bin

之所以这样,是因为C:\casperjs\batchbin包含.BAT,C:\casperjs\bin.js个文件外不包含任何内容。

答案 3 :(得分:4)

经过3天的工作后,我设法让它工作,问题在于路径和幻像的安装。我已经建立了一个文件夹的路径,但安装指向exe文件我只需将exe文件放入文件夹phantomjs,这就是感谢你的帮助。

答案 4 :(得分:3)

许多其他答案都已过时。由于似乎正确的安装过程一直在变化,我怀疑我的答案也会在几天内过时,但截至2015年3月19日,这就是答案。其他答案,即使是高度赞扬的人,也不要工作,所以不要浪费你的时间。祝好运。 Casperjs似乎相当不错。

如果你下载PhantomJS 2.0和casperjs 1.1-beta3 zip文件并将batchbin目录放在路径中并将phantom exe放在同一个文件夹中,那么在Windows 8.1上运行casperjs我得到错误&#34; CasperJS需要PhantomJS 1.x版&#34;

所以,我从github直接获得了最新的casperjs,它没有batchbin目录,所以我只把C:\ casperjs \ bin目录放在路径中而且这个工作(有点,我的意思是它似乎运行良好对我来说足够了 - 虽然运行casperjs c:\ casperjs \ tests \ selftest.js似乎有许多失败的测试。)

所以回顾一下,坏消息只是最新的casperjs前沿工作。好消息是安装是1,2,3简单:

  1. 将最新的casperjs从github克隆到c:\ casperjs。
  2. 将phantomjs.exe(版本2.0)复制到c:\ casperjs \ bin
  3. 将c:\ casperjs \ bin添加到您的Windows路径

答案 5 :(得分:1)

以防万一你像我一样使用带有双显卡的笔记本电脑:选择其中一个来防止出现问题。这篇文章帮助了我:

casperJS not finishing on windows

casperJS文档非常清楚,但在我阅读上述通知之前,我不知道该怎么做。

答案 6 :(得分:1)

快进到2015年... 5步win7 howto:

  1. choco: PS me> iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
  2. git: choco install git -y
  3. phantomjs 2.0: choco install phantomjs -y
  4. casperjs来源: git clone https://github.com/n1k0/casperjs -b phantomjs-2
  5. casperjs/bin的位置添加到路径
  6. 完成。你现在可以casperjs --version从此过上幸福的生活。

答案 7 :(得分:1)

好的伙计们。所以我认为这个线程需要刷新2018年!

因此,使用npm,工作量会大大减少。假设您已安装npm,请打开终端并转到您的项目:

cd your_project_name

现在安装casperjs。根据需要使用--save-dev--save-g或无:

npm install --save-dev casperjs

现在安装phantomjs。为此,您应该安装phantomjs-prebuilt,因为PhantomJS团队更改了他们的包名:

npm install --save-dev phantomjs-prebuilt

运行您的规范:

casperjs your_spec_name.js