web-dev-qa-db-fra.com

casperjs ne trouve pas phantomjs

J'ai téléchargé la dernière version de casperjs (1.03) et de phantomjs (1.9.2). 

J'ai donc pris ce petit script simple de la page casper:

var casper = require('casper').create({
    verbose: true,
    logLevel: "debug"
});
var casper = new require('casper').Casper();

et quand j'essaye de l'exécuter, j'obtiens l'erreur suivante:

noname:phantomjs-1.9.2 Tom$ casperjs/bin/casperjs tipico2.js 
Fatal: [Errno 2] No such file or directory; did you install phantomjs?

Donc, voici ma structure de répertoire:

phantomjs-1.9.2/ <-- the folder containing phantomjs
phantomjs-1.9.2/casperjs/ <-- a subfolder containting casperjs

Pourquoi ça ne marche pas?

23
toom

La solution est en réalité très simple. Exportez simplement le chemin où se trouve le binaire de phantomjs. Dans mon cas, c'est /Users/Tom/Downloads/phantomjs-1.9.2/bin, donc

export PATH=$PATH:/Users/Tom/Downloads/phantomjs-1.9.2/bin
22
toom

J'ai rencontré la même variable d'environnement PHANTOMJS_EXECUTABLE sur le chemin où phantomjs a été installé (c'est habituellement/usr/local/lib/node_modules/casperjs/node_modules/phantomjs/lib)./phantom/bin/phantomjs phantomjs) avec 

export PHANTOMJS_EXECUTABLE=/usr/local/lib/node_modules/casperjs/node_modules/phantomjs/lib/phantom/bin/phantomjs phantomjs

cela n'a aidé que partiellement car j'ai toujours une erreur comme il n'y a ni fichier ni dossier/usr/local/bin/phantomjs, donc je viens de créer un lien symbolique et de le pointer vers un vrai dossier binaire avec 

ln -s /usr/local/lib/node_modules/casperjs/node_modules/phantomjs/lib/phantom/bin/phantomjs /usr/local/bin/phantomjs

j'espère que cela aidera quelqu'un :)

17
Egor Litvinchuk

Pour OS X:

brew install casperjs --devel

brew install phantomjs

et ça va marcher

5
h0x91B

Si vous obtenez cette erreur en PHP, placez-le au dessus de votre exec:

<?php
    putenv("PHANTOMJS_EXECUTABLE=/usr/local/bin/phantomjs");
?>

Où path /usr/local/bin/phantomjs est le chemin de votre installation phantomjs. Vous pouvez l'obtenir en tapant which phantomjs dans le terminal, par exemple.

3
digout

Solution pour Windows

ÉTAPE 1 - Aller aux variables d'environnement

Démarrer -> Variables d'environnement -> Variables d'environnement Ou Mon PC -> Propriétés -> Paramètres système avancés -> Variables d'environnement


ÉTAPE 2 - Définissez le nouveau chemin PATH dans votre dossier PhantomJS/bin

Sélectionnez PATH (utilisateur ou système) -> Modifier

Nouveau -> Parcourir -> trouvez votre dossier BIN dans l’installation de PhantomJS sur votre disque dur Acceptez


ÉTAPE 3 - Testez votre travail

Ouvrir CMD -> Type "phantomjs -v"

Vous devriez obtenir le numéro de version de phantomJS comme réponse dans n’importe quel dossier de votre arborescence.

0
lucaste

J'ai eu ce problème. Essayé sur 2 machines Windows différentes. 

Supprimé toutes les versions installées npm des dossiers node_modules et de AppData/Roaming ....

Fantôme et casper supprimés de c:/où initialement installés.

Fantôme téléchargé et extrait dans le dossier Program Files à partir de https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-windows.Zip

Téléchargé et extrait dans le dossier Program Files de https://github.com/casperjs/casperjs/zipball/1.1.0

Définir la variable d'environnement système C:\Program Files\phantomjs-2.1.1-windows\bin

Définition de la variable d'environnement système C:\Program Files\casperjs-casperjs-b5c59e1\bin

Je n'ai pas défini PHANTOMJS_EXECUTABLE comme l'ont mentionné d'autres publications. Pas sûr que cela fasse une différence, mais 100% travaillent avec les étapes ci-dessus sous Windows 10 avec Phantom 2.1.1 et casper 1.1.0

0
Pete Herc