web-dev-qa-db-fra.com

Installer CasperJS sous Windows: comment le faire correctement?

Je sais qu'il existe une documentation sur le site Web de CasperJS sur la façon d'installer CasperJS sur Windows, mais gardez avec moi ces gars-là uniquement pour les pros.

Si vous êtes nouveau dans tout ce monde CasperJS et PhantomJS, vous n'avez aucune chance de comprendre ne pas même passer deux jours à chercher sur le net pour une meilleure explication.

Je travaille sur un projet qui nécessite une capture d'écran de chaque site Web répertorié sur le site Web de mon projet, en regardant autour, j'ai découvert que PhantomJS serait parfait pour cette tâche (capture d'écran du site Web).

J'ai téléchargé PhantomJS et collé son phantomjs.exe fichier dans system32 qui fonctionne bien quand j'utilise cmd.exe pour envoyer la commande.

J'ai même réussi à prendre une capture d'écran avec le phantomjs.exe seulement. mais mon problème est venu quand j'ai remarqué que la charge de travail pourrait être plus facile lorsque ces deux fonctionnent ensemble (CasperJS et PhantomJS) car je peux même être en mesure de réduire la taille de la capture d'écran lors de l'utilisation de CasperJS.

En fait, la seule utilisation pour laquelle je veux CasperJS est la limitation de la taille de la prise de vue, mais depuis hier, j'essaie de comprendre comment faire fonctionner CasperJS sur Windows, mais en vain.

J'ai téléchargé CasperJS et j'ai essayé de l'installer de plusieurs manières en essayant également de suivre la documentation mais rien.

J'ai changé le nom du dossier CasperJS de son nom de téléchargement en CasperJS comme le suggère la documentation, mais lorsque je vérifie le cmd en essayant d'appeler certaines commandes, rien ne se passe.

Quoi qu'il en soit, pour couper le plan de l'histoire, quelqu'un peut-il m'aider en termes simples, étant donné que je suis un débutant pour expliquer comment CasperJS peut être installé sur une fenêtre ou si possible avec PhantomJS uniquement comment puis-je redimensionner l'iamge que le programme produit permet de dire si je veulent un 960 à 400px.

35
user2075354

Mauvaise documentation pour Windows. http://casperjs.org/installation.html#windows

Il commence en supposant que vous avez déjà installé sans vous dire comment installer.

Voilà donc si quelqu'un d'autre est confus à ce sujet. Il n'y a pas d'installation réelle. Il s'agit simplement d'extraire le contenu Zip au bon endroit.

  1. télécharger phantomjs pour windows depuis le site phantomjs (c'est un Zip avec binaire à l'intérieur)
  2. extraire le contenu dans C:\phantomjs
  3. téléchargez le fichier zip casperjs depuis le site web casperjs
  4. extraire le contenu dans C:\casperjs
  5. Vous pouvez maintenant ajouter ce qui suit à la fin de votre variable système ou utilisateur PATH

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

  6. redémarrez cmd.exe pour récupérer la nouvelle variable de chemin ou vous déconnecter/vous connecter si vous exécutez l'émulateur de terminal Console2 ou Conemu (ils ne choisiront pas de nouveaux chemins par une simple fermeture et réouverture)

Maintenant, dans la documentation, il est dit de l'exécuter comme ça

casperjs.bat myscript.js

En fait, puisque phantomjs.exe et casperjs.bat sont maintenant dans le chemin du système, vous pouvez laisser l'extension comme ceci.

casperjs myscript.js

Et lors de l'exécution de phantomjs.exe, il suffit d'exécuter

phantomjs

Encore une chose. Peu importe où vous installez tant que vous ajoutez ce chemin au PATH système. J'ai installé sur C:\usr\phantomjs et C:\usr\casperjs.

63
isimmons

Je détaille ci-dessous la méthode qui a répondu à mes besoins sur mon PC de travail personnel Windows et Ubuntu. Notez que ma méthode ne joue pas avec les paramètres PATH mais implique une commande que vous pouvez enregistrer quelque part et copier et coller au besoin:

Étape 1: Rassemblez les prérequis

  • Téléchargez les versions casperjs et phantomjs que vous souhaitez utiliser
  • Faire un répertoire pour contenir les choses que je veux lister
  • Extrayez les phantomjs téléchargés et copiez son exécutable dans le répertoire étape b
  • Extraire casperjs et renommer son dossier en casperjs
  • Copiez le dossier renommé casperjs dans le répertoire étape b
  • Créez et enregistrez un fichier config.json dans le répertoire étape b
  • config.json devrait contenir des configurations phantomjs comme ici: http://phantomjs.org/api/command-line.html =

Étape 2: Exécution de votre script

  • Chaque fois que vous voulez travailler avec un fichier, suivez les détails de l'étape 1 ci-dessus
  • L'étape suivante suppose que vous êtes dans le répertoire créé dans étape b de Étape 1 ont également un fichier nommé = first.js
  • Sous Windows: phantomjs.exe --config = config.json casperjs/bin/bootstrap.js --casper-path = casperjs --cli first.js
  • Sur Ubuntu: ./phantomjs --config = config.json casperjs/bin/bootstrap.js --casper-path = casperjs --cli first.js

Expérimental config.js et first.js sont répertoriés ci-dessous:

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();

Addendum : téléchargez et enregistrez les détails de screenshots.js et exécutez-le en tant que

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

Exécuter les tests : téléchargez et enregistrez les détails de picturefill-test.js et exécutez-le en tant que

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

9
iChux

À partir de CasperJS 1.1.0-DEV Beta 3 vous devez utiliser ce CHEMIN: C:\casperjs\batchbin même si la documentation trouvée ici indique que vous devez utiliser C:\casperjs\bin

La raison en est que C:\casperjs\batchbin inclut un .BAT qui C:\casperjs\bin n'inclut rien sauf certains.js des dossiers.

7
Bashir Osman

après un travail de 3 jours, j'ai réussi à le faire fonctionner, le problème était avec le chemin et l'installation de fantôme. j'avais fait le chemin vers un dossier mais l'installation pointait vers le fichier exe tout ce que je devais faire était de mettre le fichier exe dans un dossier phantomjs et c'était merci pour votre aide à tous.

4
user2075354

La plupart des autres réponses sont obsolètes. Comme il semble que le processus d'installation correct change constamment, je soupçonne que ma réponse sera également obsolète dans quelques jours, mais au 19 mars 2015 , c'est la réponse. Les autres réponses, même celles qui sont très appréciées, ne fonctionnent pas, alors ne perdez pas votre temps. Bonne chance. Casperjs semble assez bon.

Si vous téléchargez le fichier Zip PhantomJS 2.0 et casperjs 1.1-beta3 et placez le répertoire batchbin dans le chemin d'accès et placez phantom exe dans ce même dossier, puis exécutez casperjs, sur Windows 8.1, j'obtiens l'erreur "CasperJS needs PhantomJS v1.x".

Donc, j'ai obtenu le dernier casperjs directement de github, qui n'a pas de répertoire batchbin, j'ai donc mis juste le répertoire C:\casperjs\bin dans le chemin et cela a fonctionné (en quelque sorte, je veux dire qu'il semble fonctionner assez bien pour moi - bien que l'exécution de casperjs c:\casperjs\tests\selftest.js semble avoir un certain nombre de tests ayant échoué).

Donc, pour récapituler, la mauvaise nouvelle n'est que le tout dernier casperjs Edge qui saigne. La bonne nouvelle, c'est que l'installation est 1,2,3 simple:

  1. Clonez les derniers casperjs de github dans c:\casperjs.
  2. Copiez phantomjs.exe (ver 2.0) dans c:\casperjs\bin
  3. Ajoutez c:\casperjs\bin à votre chemin Windows
3
pilavdzice

Avance rapide jusqu'en 2015 ... 5 étapes pour Win7:

  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. source casperjs:git clone https://github.com/n1k0/casperjs -b phantomjs-2
  5. Ajoutez l'emplacement de casperjs/bin vers PATH

Terminé. Tu peux maintenant casperjs --version et vivre heureux pour toujours.

1
avishayp

Ok les gars. Je pense donc que ce fil a besoin d'être rafraîchi pour 2018!

Ainsi avec npm, l'effort est considérablement réduit. Étant donné que vous avez npm installé, ouvrez le terminal et accédez à votre projet:

cd your_project_name

Installez maintenant casperjs. Utilisation --save-dev, --save, -g ou aucun au besoin:

npm install --save-dev casperjs

Installez maintenant phantomjs. Pour ce faire, vous devez installer phantomjs-prebuilt, car l'équipe PhantomJS a changé le nom de son package:

npm install --save-dev phantomjs-prebuilt

Exécutez vos spécifications:

casperjs your_spec_name.js

1
Jacek Góraj

Juste au cas où vous utilisez un ordinateur portable avec deux cartes graphiques comme moi: choisissez l'une d'entre elles pour éviter les problèmes. Cet article m'a aidé:

casperJS ne termine pas sur Windows

la documentation de casperJS est assez claire à ce sujet, mais je n'avais aucune idée de ce que je devais faire avant d'avoir lu l'avis ci-dessus.

1
Sven Bluege