2016-05-02 4 views
1

Я ищу решение по одной проблеме. Я хочу установить и использовать библиотеку casperjs, не устанавливая ничего глобально на машине.Запуск phantomjs и casperjs в локальной папке

Сначала я пытаюсь установить просто npm install casperjs (https://www.npmjs.com/package/casperjs)

Очевидно, что это сообщение об ошибке: casperjs : commande introuvable

Я пытаюсь использовать статический путь: ../../node_modules/casperjs/bin/casperjs scriptCasperJS.js

Новая ошибка: Fatal: [Errno 2] No such file or directory; did you install phantomjs?

Так что я загружаю и извлекаю phantomjs от website и экспортирую мою папку в переменную окружения: export PHANTOMJS_EXECUTABLE=/home/xxxxxxxxxx/node_modules/phantomjs-2.1.1-linux-x86_64/bin/phantomjs

это нормально, но новая ошибка: CasperError: Can't find module casperjs

Это, вероятно, пришел из моего кода:

var casper = require("casperjs").create({  
    verbose: false, 
    logLevel: "debug" 
}); 

Любая идея ..? Должен ли я изменить способ кодирования с помощью casperjs?

Заранее благодарю вас за помощь.

EDIT: для лучшего понимания

- myfolder 
    +- modules 
    | +- phantomjs-2.1.1-linux-x86_64 
    | | +- bin 
    | | | +- phantomjs 
    +- node_modules 
    | +- casperjs  
    | | +- bin 
    | | | +- casperjs  
    +- scripts 
    | +- myscriptname 
    | | +- scriptCasperJS.js 
    +- package.json 

ответ

1

Edit: Кажется, я понял вашу проблему. Вот новый ответ:

Чтобы включить модуль Casper в сценарии побежал casperJS, правильно требует

var casper = require("casper"); // Not "casperjs" ! 

Старого ответ:

CasperJS является не модуля NodeJS. Это четко указано в их документе. (См. Красное предупреждение в нижней части раздела: http://docs.casperjs.org/en/latest/installation.html#installing-from-npm).

Установка NPM предусмотрена только для удобства. Вы не сможете выполнить требование, но только называете его внешней командой.

+0

Я знаю, что мой сценарий выполняется с помощью этой команды, как я сказал: '../../node_modules/casperjs/bin/casperjs scriptCasperJS.js' Ранее Каспер был установлен в глобальном масштабе (-g) и все работает хорошо. – Tomy137

+0

Ну, в этом случае ответ еще более прост. Это просто неправильно, я только что проверил. : -) – noKid

+0

Хорошо! Так что это работа ... Замечательно! Но где fu ** вы нашли эти советы?! Конечно, я благодарю вас, но, может быть, «gaterie» будет ждать ;-) – Tomy137