草庐IT

phantomjs-node

全部标签

javascript - 使用 PhantomJS 预渲染 AngualrJS 站点时出现 "Failed to instantiate module ngSanitize"

我正在尝试使用PhantomJS预呈现我的AngularJS网站。(使用来自http://www.yearofmoo.com/2012/11/angularjs-and-seo.html的phantomjs-runner.js)由于出现以下错误,我无法通过PhantomJS加载页面。在IE/Chrome/Firefox中不会出现此错误。我该如何解决这个错误?错误:Error:[$injector:modulerr]FailedtoinstantiatemoduleSpaceForAfricadueto:Error:[$injector:modulerr]Failedtoinstanti

javascript - 使用 Node.js 每分钟发出一次请求

我今天开始使用Node.js进行开发,我认为一个应用程序会执行多个请求以了解服务器的正常运行时间。我需要每次请求完成时再次执行函数作为一个while循环。是否可以在Node.js中执行此操作?我的基本代码varhttp=require('http');varrequest=require('request');request({url:"http://www.google.com",method:"GET",timeout:10000,followRedirect:true,maxRedirects:10},function(error,response,body){if(!error

javascript - 在 node.js 中使用命名参数

我正在使用node.jsv4.3.1我想在调用函数时使用命名参数,因为它们更具可读性。在python中,我可以这样调用一个函数;info(spacing=15,width=46)如何在node.js中执行相同的操作?我的javascript函数看起来像这样;functioninfo(spacing,width){//implementation{ 最佳答案 标准的Javascript方法是传递一个“选项”对象,例如info({spacing:15,width:46});在代码中使用functioninfo(options){vars

javascript - 如何让 PhantomJS 在渲染截图时包含背景图片?

我正在使用PhantomJS截取网页的屏幕截图,使用page.render()方法,详见https://github.com/ariya/phantomjs/wiki/Screen-Capture.它工作正常,除了背景图像,所有有时显示为空白。如果转到http://screener.brachium-system.net/,您可以看到问题的示例。并输入http://www.bing.com/作为URL,有一个很大的空白区域应该是背景图像。有没有办法强制显示背景图片? 最佳答案 使用默认的rasterize.jsfromPhantom

javascript - phantomjs pdf 到标准输出

我正在拼命尝试将phantomJS生成的PDF输出到标准输出,如here我得到的是一个空的PDF文件,虽然它的大小不是0,但它显示一个空白页。varpage=require('webpage').create(),system=require('system'),address;address=system.args[1];page.paperSize={format:'A4'};page.open(address,function(status){if(status!=='success'){console.log('Unabletoloadtheaddress!');phantom

javascript - 在 Node javascript中使用selenium-webdriver执行 "commands"

我对通过javascriptAPI执行一些高级“命令”很感兴趣https://code.google.com/p/selenium/source/browse/javascript/webdriver/command.js如果我从基本代码开始:varbrowser=newwebdriver.Builder().usingServer(server.address()).withCapabilities(webdriver.Capabilities.phantomjs()).build();我尝试执行的每一种“可能”语法形式都失败了。例如://doesnotworkconsole.log

javascript - Next.js 将 NODE_ENV 传递给客户端

我正在使用Next.js构建ReactSSR应用。我希望能够在客户端访问NODE_ENV,因为这会告诉我的应用使用哪些API端点。我正在努力为此寻找合适的方法。当我第一次在服务器上呈现页面时,我想将NODE_ENV定义为一个窗口变量,然后在我进行API调用的辅助函数中,我将检查代码是在服务器上调用还是在客户端上调用,并根据需要使用window或process.env对象。对于这样的问题,有人有好的解决办法吗?这一定是一个常见问题,但我找不到任何好的解决方案。 最佳答案 1。您可以将其包含在webpack配置中(使用dotenv-we

javascript - 多个 PhantomJS 实例挂起

我在Ubuntu14上运行多个PhantomJS实例时遇到问题。几分钟后,进程变得无响应。简要背景:使用PhantomJS2.0呈现网页,最终使用Wkhtmtopdf将其保存为PDF。PhantomJS只负责加载页面,发出ajax请求,并在PDF保存到服务器后等待响应。它本身不生成PDF。有数百个网页需要生成为PDF,所以我想在系统允许的情况下并行运行尽可能多的PhantomJS实例。每个PhantomJS进程都由一个shell脚本启动,如下所示:{phantomjs路径}{js文件路径}--data{一些参数}>>{日志文件路径}2>&1&问题发生在几分钟后,我停止从PhantomJ

javascript - 如何下载并保存在 PhantomJS 的响应 header 中作为附件接收的 PDF 文件?

我正在尝试使用PhantomJS下载一些PDF文件。没有用于下载该PDF的直接URL,因为当我单击提交按钮时它会调用一些内部JavaScript函数。这是我用来下载PDF文件的代码:page.open(url,function(status){page.evaluate(function(){document.getElementById('id').click();});});page.onResourceReceived=function(request){console.log('Received'+JSON.stringify(request,undefined,4));};“

javascript - 为什么 PhantomJS 单击此元素与手动单击它的效果不同?

如果您访问thissite并单击“攻击”选项卡,更新下表。我已经尝试了各种不同的方法来在node-horseman甚至PhantomJS中实现这一点,但没有成功。这是一个带有问题简单演示的代码库。任何帮助表示赞赏!https://github.com/dominictracey/trn-click-issue.git重新编辑以添加完整的代码片段:varHorseman=require('node-horseman')varhorseman=newHorseman()varrect={};constselectorTabs="ul.tabs.alt"constselectorAttack