1.0.3 • Published 6 years ago

puppexport v1.0.3

Weekly downloads
3
License
ISC
Repository
github
Last release
6 years ago

puppexport 环境依赖

centos7

    安装 nodejs 8.x
        安装说明: https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora

    安装 cnpm 源
        npm install -g cnpm --registry=https://registry.npm.taobao.org

    安装 google chrome
        https://intoli.com/blog/installing-google-chrome-on-centos/

    安装中文字体(在本目录下有个.fonts目录, 里面有中文字体可用)
        请参考 https://blog.csdn.net/wlwlwlwl015/article/details/51482065

    设置 PHP 超时为 120秒, 需要设置 php, php-fpm, nginx 3个地方
        请参考 https://www.scalescale.com/tips/nginx/504-gateway-time-out-using-nginx/

    安装文件导出命令
        sudo cnpm install -g puppexport

    变更 node_modules 文件执行权限(非ROOT用户)
        sudo chmod -R 755  /usr/lib/node_modules/puppexport/     

    测试命令是否运行正确

        #执行测试命令
        puppexport '{"url":"http://btbtd.com/topic/test/test.html","filepath":"/tmp/file_20180413_2.pdf"}'

数据范例

usage:
	node ./bin/puppexport.js '{"url":"http://btbtd.com/topic/test/test.html","filepath":"/tmp/file_20180413_2.pdf"}'

desc: 
	目前是同步阻塞版本, node 命令执行完时, 会同步在 JSON.filepath 路径生成对应的文件, 

data format: 
	{
		//页面URL
		"url": "http://demo.next.virus.btbtd.com/logreport/logreport",

		存的文件路径, 需要保证文件名的维一性, 注意扩展名( pdf ), 目前支持( png, pdf )
		"filepath": "/home/suches/udocs/website/pupp.me.btbtd.com/project/v1/cache/file_20180411.pdf",

		//请求超时时间, 单位秒, 默认120秒 
		"MAX_TIME": 120,

		//用于识别页面加载完毕的 console.log, 默认 MAGIC_DONE 
		//页面可以导出时, 在页面执行 console.log( 'MAGIC_DONE' )
		"DONE_LOG": "MAGIC_DONE",

		//每个cookie 的 key 都是 object 对象
		"cookies": [

			{
				//cookie name
				"name": "laravel_session",

				//cookie value
				"value": "eyJpdiI6Imx6XC8wT2hRR3dZVzE2ckF3cFloc2h3PT0iLCJ2YWx1ZSI6IlZ3TTZQWmxOQUtaRkNiTnZaYmFab1FzVGwyWXpZTGkyQWhNSE1BNG9DcWhYOU5cL2FkK2tXQWttV2JxQXRzdzlxNDhlTG5EYWhKNExsa1pzQ1JGeEpzZz09IiwibWFjIjoiODY5YTY3YTQ4MDExZjlmYzNjY2M4MTdlNGJkNDdkOGE0ZGFmY2FjODY4YWE1MjAyNzJlZDEwYTAxZDE2N2Q1NiJ9",

				//cookie 域名
				"domain": "demo.next.virus.btbtd.com",

				//页面url
				"url": "http://demo.next.virus.btbtd.com/logreport/logreport",

				//cookie保存路径
				"path": "/",

				//cookie过期时间, unit 时间截, 当前天+10
				"expires": 1554897241212,

				//只允许 http 使用
				"httpOnly": true
			}

		]
	}

可用命令

   puppexport {json string}          //异步导出PDF, 页面console.log( 'MAGIC_DONE' ) 时, 执行导出命令
   
   puppexport png {json string}      //异步导出PNG, 页面console.log( 'MAGIC_DONE' ) 时, 执行导出命令
   
   puppexport syndPdf {json string}  //同步导出PDF
   
   puppexport syncPng {json string}  //同步导出PNG