У меня есть код test.js из руководства http://docs.casperjs.org/en/latest/cli.html
var casper = require("casper").create();
casper.echo("Casper CLI passed args:");
require("utils").dump(casper.cli.args);
casper.echo("Casper CLI passed options:");
require("utils").dump(casper.cli.options);
casper.exit();
и я могу успешно выполнить его из терминала ‘$ casperjs test.js arg1 arg2 arg3 —foo = bar —plop anotherarg’. Это работает, и это хорошо, но мне нужно выполнить это из сценария PHP, я попытался сделать это с помощью кода PHP:
<?php
function parser() {
try {
echo(exec("C:\casperjs\bin\casperjs.exe C:\OpenServer\domains\casper\test.js arg1 arg2 arg3 --foo=bar --plop anotherarg"));
flush();
} catch (Exception $exc) {
echo('error!');
echo $exc->getTraceAsString();
}
}
parser();
putenv("PHANTOMJS_EXECUTABLE=/usr/local/bin/phantomjs");
putenv("DYLD_LIBRARY_PATH");
?>
Но у меня возникла ошибка ‘phantomjs: //code/bootstrap.js: 110 in __die’.
Как я могу сделать это правильно? Пожалуйста помоги!
Кроме того, вы можете использовать exec()
выполнить команду:
$result = exec('PHANTOMJS_EXECUTABLE=/usr/local/bin/phantomjs /usr/local/bin/casperjs script.js');
echo $result;
Других решений пока нет …