通过 PhantomJS 调用时找不到模块“casper”

2023-11-26

我在 C:\xampp\htdocs\phantom 中安装了 PhantomJS,并且在该文件夹 C:\xampp\htdocs\casper 中安装了 CasperJS

当我尝试使用 casper 站点上运行这些示例代码时phantomjs test.js命令:

var casper=require('casper').create();
casper.start('http://google.fr/');

casper.thenEvaluate(function(term) {
    document.querySelector('input[name="q"]').setAttribute('value', term);
    document.querySelector('form[name="f"]').submit();
}, 'CasperJS');

casper.then(function() {
    // Click on 1st result link
    this.click('h3.r a');
});

casper.then(function() {
    console.log('clicked ok, new location is ' + this.getCurrentUrl());
});

casper.run();

它给了我一个错误告诉我:

错误:找不到模块“casper”

我做错了什么?


如果你想通过 PhantomJS 运行 CasperJS(因为你调用phantomjs test.js)您需要在脚本开头添加一些引导代码:

phantom.casperPath = 'path/to/node_modules/casperjs';
phantom.injectJs('path/to/node_modules/casperjs/bin/bootstrap.js');

请记住,即使在 Windows 上,您也需要使用正斜杠。

如果您需要测试环境,那么您还需要以下行:

phantom.casperTest = true;

一切都来自这个问题:在 phantom 中运行“casperjs 测试”

尽管这是可能的,但您不应该这样做。您应该通过 node_modules/casperjs/batchbin 中的可执行文件/批处理文件直接调用 CasperJS。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 PhantomJS 调用时找不到模块“casper” 的相关文章

随机推荐

  • 在android中画圆[关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 如何使用 Android SDK 在两点之间绘制圆 创建一个位图 然后在其画布上绘制 然
  • Postgresql base64 编码

    我需要将 db 值转换为 base64encode 我试过 select encode cast est name as text base64 from establishments 它显示错误 SQL select encode str
  • 在提交表单之前添加确认提醒

    我有一个表单允许用户从数据库中删除一些数据 我想要一些确认信息以防止意外删除 我想做以下事情 按下提交后 会弹出警告 您确定吗 如果用户点击 是 则运行脚本 如果用户点击 否 则不要提交脚本 如何才能做到这一点 我已经添加了 onSubmi
  • np.array() 和 np.asarray() 有什么区别?

    NumPy 和 NumPy 有什么区别np array and np asarray 我什么时候应该使用其中一种而不是另一种 它们似乎产生相同的输出 The 的定义asarray is def asarray a dtype None or
  • table-header-group 、 table-footer-group 属性在 Chrome 中不起作用

    这是我的代码 http furkan brove net syflm php 当我打印它时 它在 Chrome 中不起作用 我希望它在打印模式下将页眉和页脚放在每一页上 此外 在每个浏览器中 最后一个页脚位于内容的底部 但我希望它位于页面底
  • python中的完全单调插值

    我有一些数据 例如 我想拟合一条可微分的单调曲线 我试过PchipInterpolator类但在一个非常相似的图表上 结果是 这并不单调 如何将单调曲线拟合到这样的数据 以下是另一个类似图表的 y 值示例集 0 11091571190236
  • Xcode 6.3 两次构建所有 swift 文件

    我刚刚升级到 Xcode 6 3 并试图将编译时间减少到可管理的程度 我的项目中有大约 120 个 swift 文件 类 编译需要 2 3 分钟 我的项目还有两个测试目标 UnitTests and AutomatedTests Here
  • Django forms.DateInput 不应用 attrs 字段中给出的属性

    尝试通过 django 的 attrs 说明符应用时 占位符 类未设置表单 日期输入 表格是一个模型表单 并根据docs 采用与 TextInput 相同的参数 但多了一个可选参数 这是代码 widgets my date field fo
  • Javascript 中除法结果的四舍五入

    我正在 Javascript 中执行以下操作 0 0030 0 031 如何将结果四舍五入到任意位数 a 的最大数量是多少var将举行 现代浏览器应该支持一种称为toFixed 这是取自网络的例子 Example toFixed 2 whe
  • 裁剪和缩放 MTLTexture

    我可以创建一个新的吗MTLTexture尺寸w2 h2现有的MTLTexture region x1 y1 w1 h1 PS 我考虑过使用MTLTexture buffer makeTexture但偏移量需要是64字节 为什么 以下是您可以
  • 如何更改 joptionpane 的大小和字体?

    您可以更改 JOptionPane 文本的字体和大小吗 我尝试过 只有当我在该特定的 java 类上 运行文件 时它才有效 如果您启动整个项目 它不会更改字体 我只想更改特定的 JOptionPane 而不是全部 这是代码 UIManage
  • + 运算符如何用于合并委托?

    例如 delegate void SomeDelegate SomeDelegate a new SomeDelegate gt Console WriteLine A SomeDelegate b new SomeDelegate gt
  • Flexbox 溢出滚动条显示在主体而不是内部元素上

    问题 在使用带有溢出的 Flexbox 的全尺寸应用布局 100 宽度 100 高度 中 在 Firefox IE 或 Edge 中不会显示滚动条 它们在 Chrome 中确实显示正常 FF IE Edge 中不是在元素上设置垂直滚动条 而
  • kafka ack=all 和 min-isr

    Summary Kafka 的文档和代码注释表明 当生产者设置acks被设定为all那么只有在以下情况下才会将 ack 发送给生产者 所有同步副本都已赶上 但是代码 Partition Scala checkEnoughReplicasRe
  • “[<-.data.frame”中出现 R 错误...替换有 # 项,需要 #

    我是 R 新手 这超出了我的能力范围 下面的脚本使用两个虚拟表 结果和计数 每个表都有两列 A 和 B 我正在运行排列测试来比较 A 和 B 的结果 具体来说 我正在查看 A 和 B 的结果 计数 结果和计数都有 20 行 并且我编写了一个
  • Clojure - 埃拉托斯特尼的尾递归筛

    我在 Clojure 中实现了埃拉托斯特尼筛法 defn sieve n loop last tried 2 sift range 2 inc n if or nil last tried gt last tried n sift let
  • Readlock 和 Writelock 会导致 writer 饥饿吗?

    在解决读者写入问题时 我尝试使用ReentrantReadWriteLock 我知道所有读者可以同时获取读锁 但是写锁必须等待所有读锁被释放 如果我们有很多读者 这是否会导致作者处于饥饿状态 ReentrantReadWriteLock 可
  • Eclipse 格式化程序可以配置为在括号之间正确缩进多行吗?

    可以配置 或扩展 Eclipse 格式化程序和代码清理来添加我在以下示例中期望的缩进 public static void main String args String numbers new String one two three f
  • Android EditText 内存泄漏

    很多人注意到活动中的 EditText 即使在活动完成后也持有对活动的强引用 需要明确的是 此 EditText 位于布局内并已膨胀 因此没有设置侦听器 这仅发生在某些设备上 例如三星 Galaxy S4 Android 4 2 2 等 许
  • 通过 PhantomJS 调用时找不到模块“casper”

    我在 C xampp htdocs phantom 中安装了 PhantomJS 并且在该文件夹 C xampp htdocs casper 中安装了 CasperJS 当我尝试使用 casper 站点上运行这些示例代码时phantomjs