位置: 编程技术 - 正文

NodeJS的url截取模块url-extract的使用实例(nodejs截图)

编辑:rootadmin

上次介绍了怎么利用NodeJS + PhantomJS进行截图,但由于对每次截图操作,都启用了一个PhantomJS进程,所以并发量上去后,效率堪忧,所以我们重写了所有代码,并将其独立成为一个模块,方便调用。如何改进?控制线程数,以及单线程处理url数量。使用Standard Output & WebSocket 进行通讯。添加缓存机制,目前使用Javascript Object进行。对外提供简易的接口。 设计图

依赖 & 安装

由于PhantomJS 1.9.0+才开始支持Websocket,所以我们先要确定在PATH中的PhantomJS是为1.9.0以上版本。在命令行键入:

$ phantomjs -v

如果能返回版本号1.9.x,则可以继续操作。如果版本过低,或者出现错误,请到PhantomJS官网下载最新版本。

如果你已经安装了Git,或者拥有Git Shell,那么在命令行键入:$ npm install url-extract

进行安装。一个简单的例子 比如我们要截取百度首页,那么可以这样:

下面是打印:

其中,image属性就是截图相对于工作路径的地址。我们可以使用Job的getData接口来得到更清楚的数据,例如:

打印就变成了这样了:

image表示截图相对于工作路径的地址,status表示状态是否正常,true代表正常,false代表截图失败。

更多例子请参见:

主要API

.snapshot

url快照

.snapshot(url, [callback]).snapshot(urls, [callback]).snapshot(url, [option]).snapshot(urls, [option])

.extract

url信息抓取,并获取快照

.extract(url, [callback]).extract(urls, [callback]).extract(url, [option]).extract(urls, [option])

url {String} 要截取的地址

urls {Array} 要截取的地址数组

callback {Function} 回调函数

option {Object} 可选参数

┝ id {String} 自定义url的id,如果第一个参数是urls,此参数无效

┝ image {String} 自定义截图的保存地址,如果第一个参数是urls,此参数无效

┝ groupId {String} 定义一组url的groupId,用于返回时候辨认是哪一组url

┝ ignoreCache {Boolean} 是否忽略缓存

┗ callback {Function} 回调函数

Job(类)

每一个url对应一个job对象,url的相关信息由job对象存储。

Field

url {String} 链接地址content {Boolean} 是否抓取页面的title和description信息id {String} job的idgroupId {String} 一堆job的组idcache {Boolean} 是否开启缓存callback {Function} 回调函数image {String} 图片地址status {Boolean} job当前是否正常

Prototype

getData() 获取job的相关数据

全局配置

url-extract根目录中的config文件可以进行全局配置,默认如下:

module.exports = { wsPort: , maxJob: , maxQueueJob: , cache: 'object', maxCache: , workerNum: 0};wsPort {Number} websocket占用的端口地址maxJob {Number} 每个PhantomJS线程可并发worker数maxQueueJob {Number} 最大等待工作数量,0表示不限制,超过该数量,任何工作都直接返回失败(即status = false)cache {String} 缓存实现,目前只有object实现maxCache {Number} 最大缓存链接数workerNum {Number} PhantomJS线程数,0表示和CPU数量相同

一个简单的服务例子

npm install

如果你下载了网盘的文件,那么请安装connect:

$ npm install connect

然后键入:

$ node bin/server

打开:

;

推荐整理分享NodeJS的url截取模块url-extract的使用实例(nodejs截图),希望有所帮助,仅作参考,欢迎阅读内容。

NodeJS的url截取模块url-extract的使用实例(nodejs截图)

文章相关热门搜索词:node获取url参数,nodejs 解析html,node url,nodejs url,nodejs url.parse,nodejs url.parse,nodejs url,nodejs url,内容如对您有帮助,希望把文章链接给更多的朋友!

ExtJS自定义主题(theme)样式详解 本文基于ExtJS4.2.1版本UI组件基础学习ExtJS就是学习组件的使用。ExtJS4对框架进行了重构,其中最重要的就是形成了一个结构及层次分明的组件体系,由这

深入领悟JavaScript中的面向对象 JavaScript是面向对象的。但是不少人对这一点理解得并不全面。在JavaScript中,对象分为两种。一种可以称为普通对象,就是我们所普遍理解的那些:数字

YUI模块开发原理详解 随着互联网应用越来越重,js代码越来越庞大,如何有效的去组织自己的代码,变得非常重要。我们应该学会去控制自己的代码,而不是到最后一堆bug

标签: nodejs截图

本文链接地址:https://www.jiuchutong.com/biancheng/373654.html 转载请保留说明!

上一篇:NodeJS url验证(url-valid)的使用方法(node urlencode)

下一篇:ExtJS自定义主题(theme)样式详解(excel自定义样式)

  • 城建附加的计税依据
  • 公司购买二手房可以开增值税专用发票吗
  • 计提工资时个税怎么处理
  • 增值税票是什么
  • 公司取得违约金合法吗
  • 分期收款销售的基本业务处理
  • 计入税金及附加的税种口诀
  • 销售购物取得的收入
  • 运输企业支付罚款如何账务处理
  • 劳务派遣公司简介模板范文
  • 小规模纳税人的企业所得税税率
  • 开具红字增值税专用发票的条件
  • 企业如何申请科研项目
  • 未入账成本
  • 有形动产租赁包括有形动产融资租赁
  • 月末收到一批b材料,结算凭证未到,估价50000
  • 股权转让的溢价要交什么税
  • 供应商不给我们开发票,我怎么入账
  • 非营利组织取得稳岗补贴收入要交税吗
  • 当月工资补扣个税吗
  • 当期出售其他权益怎么算
  • 小规模减免增值税政策
  • 个人缴付的年金是什么
  • 建筑劳务公司开票税率是多少
  • 以前年度损益调整借贷方向
  • 预付加油充值卡可以报销吗
  • 鸿蒙怎么设置默认系统
  • 存货周转材料报废处理会计分录
  • 哪些发票不可以通过数电平台开具
  • PHP:JulianToJD()的用法_日历函数
  • 生产企业放假前的安全提示
  • php调试函数
  • 基金公司做销售有前途吗
  • 金税盘如何使用流程
  • 企业会计核算应当以权责发生制为基础
  • 教育费附加免税需要计提吗?
  • 矿产资源补偿费计入税金及附加吗
  • 以前年度损益调整是什么意思
  • 预算单位往来资金增加申报表代办人签字有风险吗?
  • c++32个关键字详解
  • 教育经费什么情况下可以报销
  • python怎么运行程序
  • python中with语句的用法
  • 哪些企业可以开发票
  • 绩效工资交个人所得税吗
  • sqlserver判断数字
  • 小规模纳税人收普票和专票有什么区别
  • 在计算应纳税所得额时
  • 小规模在税务局开专票需要什么材料
  • 顶账资产入账依据
  • 应交增值税进项税额转出账务处理
  • 买商品赠送赠品怎么做账
  • 出口样品未报关处罚
  • 贷款保险费由谁承担
  • 个人生产经营所得税怎么申报
  • 公司不报税会怎样法人有责任么
  • sql联合主键设置外键
  • mysql新手入门
  • Linux下mysql 5.6.17 安装图文教程
  • java如何连接sql
  • linux系统中的文件
  • mac adobe flash player一直提示更新
  • win8metro版桌面安卓下载
  • win7系统本地连接图标不见了
  • win8使用教程和技能
  • linux支持哪些类型的设备
  • win7系统删除密码
  • win1020h2版好不好
  • linux安装有哪几种方式
  • perl中\s+
  • [置顶]JM259194
  • 内存优化有哪些方法
  • javaScript parseInt字符转化为数字函数使用小结
  • JavaScript中的数据类型分哪为两大类?
  • 微博评论系统
  • 广东省税务局官网 国家税务总局
  • 重庆电子税务局网页版登录
  • 怎么查询个人所得税申报成功
  • 棚户区改造的房子和商品房有什么区别
  • 赞颂税务工作者绝句
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设