Работает ли PhantomJS без Node.js?
Скрипт работает, сообщения status и Page loaded в консоли есть
var fs = require('fs');
var webPage = require('webpage');
var page = webPage.create();
page.open('http://www.google.com/', function(status) {
console.log('Status: ' + status);
// Do other things here...
if (status === 'success') {
console.log('Page loaded');
// Подключаем jQuery
page.injectJs('/var/www/wik/data/www/bestscare.ru/jquery-1.11.3.min.js');
// Получаем нужный контент со страницы
html = page.evaluate(function() {
titles = '';
$('.post_title').each(function(){
titles += $(this).html() + '\n';
});
return titles;
});
// переопределим на случай если контент не получим и попытаемся записать слово test в файл
html = 'test';
// Пишем в файл
var file = fs.open('articles.txt', "w+");
file.write(html + '\n');
file.close();
phantom.exit();
}
});
Но запись в файл не происходит (права на файл 777). Пробовал.
fs.write('articles.txt', "some data", "wba")
Не записывает, файл пустой. Если попытаться прочитать:
fs.readFile('/var/www/user/data/www/site.ru/articles.txt', function (err, data) {
if (err) throw err;
console.log(data);
});
Ошибка: TypeError: 'undefined' is not a function (evaluating 'fs.readFile') /var/www/user/data/www/site.ru/file1.js:35 :/modules/webpage.js:281 Вопрос: от чего всё это? Люди говорят что у них без Node.js работает, т.е. Фантому Нода не нужна, а документацию тогда по работе с файловой системой где читать? От ноды всё равно, т.к. другой нет? |
В фантоме в модуле fs нет ф-ции readFile, насколько я понял.
|
require("fs").readFile --> undefined
phantomjs --version --> 1.9.8 |
Заработал этот вариант
fs.write('/полный_путь/articles.txt', "some data", "wba")
У меня почему-то фантом 1.9.0 установился... Обновить фантом можно какой-то командой? |
Цитата:
|
| Часовой пояс GMT +3, время: 05:06. |