Est-ce que quelqu'un connaît un bon navigateur en ligne de commande avec support js?
Idéalement, j'ai besoin de la capacité suivante:
some-browser http://example.com > ~/page.html
Cela signifie que le navigateur cli télécharge le code HTML, exécute js et affiche une page.
Je ne suis pas au courant d'un navigateur interactif prenant en charge js, mais vous devriez jeter un coup d'œil à PhantomJS qui est défini comme:
PhantomJS est un WebKit sans tête avec une API JavaScript. Il prend en charge de manière rapide et native diverses normes Web: gestion du DOM, sélecteur CSS, JSON, Canvas et SVG.
Pour obtenir le contenu de la page après son rendu:
$ phantomjs save_page.js http://example.com > ~/page.html
avec save_page.js:
var system = require('system');
var page = require('webpage').create();
page.open(system.args[1], function()
{
console.log(page.content);
phantom.exit();
});
Un projet parallèle intéressant est phantomjs-node qui intègre PhantomJS avec NodeJS , permettant à l'ancien d'être utilisé en tant que module NodeJS.
Edbrowse, un éditeur/navigateur de type ed optimisé pour les utilisateurs aveugles mais apprécié par les administrateurs système pour sa scriptabilité, prétend prendre en charge javascript basé sur le moteur de Mozilla. C'est à http://the-brannons.com/edbrowse/ .
Si vous utilisez Linux, vous pouvez contrôler à distance Firefox en utilisant Ruby (et probablement d'autres liaisons de langage) avec watir-webdriver , puis, une fois que vous l'aurez fonctionné, peut le tromper en courant sans aucun affichage (mais continue de frapper la page, en téléchargeant des données de téléchargement ou en grattant des données) en utilisant Xvfb ,
Selon la documentation de elinks
, il prend en charge JavaScript. Voir la section 2.6.1 pour plus d’informations sur l’installation de SpiderMonkey.
Si un fichier PNG de la page Web est suffisant et que vous n'avez pas besoin de la source HTML, vous devriez pouvoir utiliser webkit-image
, un petit utilitaire de ligne de commande fourni avec Ubuntu. Cependant, ce n'est pas vraiment une application riche en fonctionnalités, de sorte qu'elle n'offre pas beaucoup de personnalisation, mais qu'elle pourrait être un bon point de départ pour un piratage supplémentaire et donc peut-être même permettre d'obtenir la sortie HTML traitée relativement facilement.