Tag: phantomjs

在heroku上运行每个cronjob的casperjs

我已经在casperjs中创build了一个从网站上下载体育数据的应用程序。 我想运行这个应用程序每个cronjob在heroku上,以保存在csv,数据库或外部的谷歌文档(还没有决定)的体育成绩。 不过,在我开始为heroku实施之前,我有一个问题: 我发现这个heroku buildpack ,声称它可以运行casperjs scirpts。 但是,我需要nodejs来运行脚本吗? 或者我可以在heroku上创build一个cronjob? 我真的很感激你的回复!

正确使用与茉莉花2的业力常识

我花了相当长的时间试图debugging这个,我想问问。 我甚至创build了一个GitHub仓库,但不会依赖它,所以在这里。 我试图利用PhantomJS的Karmatesting运行器中的CommonJS语法。 对于我的模块,我创build了我能想到的最简单的事情: exports.returnYes = function() { return "Yes"; }; 茉莉花testing是: var returnYes = require("../js/returnYes").returnYes; describe("returnYes", function() { it("should return Yes", function() { expect(returnYes()).toBe("Yes"); }); }); 而且,如果我做了一个jasmine init我可以从命令行运行它感谢jasmine-npm只需输出jasmine : $ jasmine Started . 1 spec, 0 failures Finished in 0.003 seconds 现在试着让它在karma里面工作:我用框架创build我的karma.conf.js : jasmine , commonjs 。 而且,我添加commonjs作为预处理器。 我尝试做一个karma run ,我发现它不能findglobal ,它是getJasmineRequireObj中getJasmineRequireObj的一部分,它声明了jasmineGlobal = global; […]

查找带有节点的PDF页数(在Windows上)

我做了很多研究(我想还不够?),并试图find一个易于使用的库来find使用Node.js PDF的页数。 该库需要在Windows操作系统上可用。 任何人都知道如何最好地处理这个? 最坏的情况,我正在考虑用PhantomJS和PDF.js库做些什么。 谢谢你的帮助!!

PhantomJS:外部CSS在呈现的pdf中被忽略

我正在使用phantom模块的nodejs从html生成pdf。 首先,我读了html模板,并用数据填充它,并将其呈现为pdf。 我想使用引导CSS来风格的页面,但风格是任何结果pdf文件中的任何内容。 这里是我的JavaScript代码: var phantom = require('phantom'); var htmlTemplate; fs = require('fs') fs.readFile('template.html', 'utf8', function (err,data) { var htmlTemplate = populateTemplate(data, body) phantom.create(function(ph){ ph.createPage(function(page) { page.set("paperSize", { format: "A4", orientation: 'portrait', margin: '1cm' }); page.setContent(htmlTemplate, "", function(){ page.render("../userdata/test.pdf", function(){ console.log("page rendered"); ph.exit(); }); }); }) }); }); 和html模板(简单)看起来像这样: <!DOCTYPE html> <html> <head> <link href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.3.5/paper/bootstrap.min.css", […]

Karma:加载“karma-phantomjs-launcher”插件时出现错误

我正在尝试在Node.js(6.1.0)环境中的Centos 7上运行testing。 跑完之后 ./node_modules/karma/bin/karma –log-level debug start 我收到错误消息: Error during loading "karma-phantomjs-launcher" plugin: Path must be a string. Received null 在karma.conf.js中我提到了插件和浏览器: 'plugins': ['karma-mocha', 'karma-chai', 'karma-sinon', 'karma-chai-sinon', 'karma-coverage', 'karma-jasmine', 'karma-phantomjs-launcher', 'karma-chrome-launcher', 'karma-babel-preprocessor'], browsers: ['PhantomJS'], 我也为本项目在本地安装了所有插件。 所有其他插件加载没有问题。 我也有相同的项目运行在Windows 7环境没有问题。

Phantom,Casper和Meteor为什么需要自己的可执行文件?

幻影 和meteor都是build立在节点之外的,卡斯帕是build立在幻影之外的。 为什么他们每个都需要自己单独的可执行文件,而不是通过Node.js来创build库? (我发现这使得它们更难以使用,特别是在Windows上)。

Nodejs + phantomjs与纯幻影 – 页面加载时间

我在探索nodejs和phantomjs,并写了一个小代码来测量页面加载时间。 我发现页面加载时间在包装在nodejs中的phantomjs代码与纯幻象代码相比有所不同。 下面是代码:phantomjs和nodejs进行比较: 的NodeJS: var http = require('http'), phantom = require('phantom'); url = require("url"); http.createServer(function (request, response) { var start = Date.now(); request.on('end', function () { phantom.create(function(ph) { ph.createPage(function(page) { var _get = url.parse(request.url, true).query; page.open(_get[url], function(status) { if (status == 'success') { var time = Date.now() – start; console.log(time); } }); }); }); }); […]

使phantomjs(nodejs系统)使用本地字体而不是webfonts

我遇到了使用phantomjs 2.1.1从html中渲染非常大的PDF文件的问题 上面提到的解决scheme是在ubuntu上本地安装字体,然后让phantomjs使用这些字体。 有没有人有这样的经验?

将JavaScript注入到zombie.js中

您好,我想知道是否有能力在节点js和僵尸js注入javascript文件到无头浏览器,类似于你可以用phantomjs做什么。 例如在幻影js你会做: page.injectJs("amino/TVI.js") 我已经使用phantomjs,它做了我想要做的事情,但是我正在testing其他选项,因为使用幻像js所需的高内存。

无法通过phantomjsnetworking服务器传送图像文件

我正在尝试得到phantomjsnetworking服务器为我工作 我想提供2个文件,HTML文件和PNG图像文件,HTML文件服务良好,并在浏览器中正确呈现,但PNG文件不 这里是服务器的代码 var fs = require('fs'); function loadFile(name){ if(fs.exists(name)){ console.log(name+ " File exist"); return fs.open(name,"r"); }else { console.log("File do not exist"); } } var server, service; server = require('webserver').create(); service = server.listen(8080, function (request, response) { if(request.url.split(".")[1] === "html" ){ var fi = loadFile("./test.html"); response.statusCode = 200; response.write(fi.read()); fi.close(); response.close(); }else if (request.url.split(".")[1] === […]