xl1 0.1.1 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkNEJSZOZXjs = require('./chunk-NEJSZOZX.js');var S=_chunkNEJSZOZXjs.b.call(void 0, (j,f)=>{var d=_chunkNEJSZOZXjs.a.call(void 0, "axios"),x=_chunkNEJSZOZXjs.a.call(void 0, "cheerio"),c=_chunkNEJSZOZXjs.a.call(void 0, "fs"),r=_chunkNEJSZOZXjs.a.call(void 0, "path"),{format:u}=_chunkNEJSZOZXjs.a.call(void 0, "date-fns"),w=_chunkNEJSZOZXjs.a.call(void 0, "pptxgenjs"),m=_chunkNEJSZOZXjs.a.call(void 0, "winston"),g=m.createLogger({level:"info",format:m.format.combine(m.format.timestamp(),m.format.printf(({timestamp:a,level:t,message:e})=>`${a} [${t}]: ${e}`)),transports:[new m.transports.Console,new m.transports.File({filename:"combined.log"})]});function b(a,t){let e=new w;c.readdirSync(a).filter(i=>/\.(jpg|jpeg|png)$/.test(i)).forEach(i=>{let n=e.addSlide(),l=r.join(a,i);n.addImage({path:l,x:0,y:0,w:"100%",h:"100%"})}),e.writeFile(t)}var p=class{constructor(){this.url="",this.filename="",this.title="",this.images=[],this.meta={}}urlParse(t){(t.startsWith("'")&&t.endsWith("'")||t.startsWith('"')&&t.endsWith('"'))&&(t=t.slice(1,-1)),!t.startsWith("http://")&&!t.startsWith("https://")&&(t="https://"+t);let e=t.split("/").slice(3,5).join("_").replace(/[^0-9a-zA-Z]+/g,"-");return e.trim()===""&&(g.debug("Something wrong to get filename from URL, fallback to result.pdf"),e="output"),{url:t,filename:e}}isExists(t,e,s,i){let{url:n,filename:l}=this.urlParse(t),h=r.join(e,`${s?s+l:l}.${i}`);return c.existsSync(h)&&console.log("file exist!",h),c.existsSync(h)}async startParse(t,e){let{url:s,filename:i}=this.urlParse(t);this.url=s,this.filename=e?e+i:i;let l=(await d.get(this.url)).data,h=x.load(l);return this.title=`pdf_images_${u(new Date,"yyyy/MM/dd_HH:mm:ss")}`,this.images=h('img[data-testid="vertical-slide-image"]').toArray(),g.debug(this.images),this.getMeta(h)}async startDownload(t,e){if(!this.images||this.images.length===0){g.debug("no image to download");return}let s=r.resolve(r.join(t,this.filename));c.existsSync(s)||c.mkdirSync(s,{recursive:!0});for(let i of this.images){g.debug(i);let n=i.attribs.srcset.split(",").pop().split(" ")[1];g.debug(n),await this.saveFile(n,s)}e.includes("pdf")&&createPDF(s,r.join(t,`${this.filename}.pdf`)),e.includes("pptx")&&b(s,r.join(t,`${this.filename}.pptx`)),console.log("Download completed!",r.join(t,`${this.filename}.pptx`))}async saveFile(t,e){let s=r.join(e,r.basename(t));if(c.existsSync(s)){g.debug(`file exist! ${s}`);return}(await d.get(t,{responseType:"stream"})).data.pipe(c.createWriteStream(s))}clean(t){return String(t).trim()}getTitle(t){try{return this.clean(t("span.j-title-breadcrumb").text())}catch (e2){return""}}getDesc(t){try{return t("ol.transcripts").children("li").toArray().map(s=>this.clean(t(s).text()))}catch (e3){return[]}}getSummary(t){try{return this.clean(t("#slideshow-description-paragraph").text())}catch (e4){return""}}getAuthor(t){try{return this.clean(t('span[itemprop="name"]').text())}catch (e5){return""}}getPublish(t){try{return this.clean(t('time[itemprop="datePublished"]').text())}catch (e6){return""}}getMeta(t){return this.meta={url:this.url,name:this.filename,title:this.getTitle(t),summary:this.getSummary(t),publish:this.getPublish(t),desc:this.getDesc(t),author:this.getAuthor(t),created_at:u(new Date,"yyyy/MM/dd HH:mm:ss")},this.meta}};async function P(a,t,e,s=["pptx"]){let i=new p;if(i.isExists(a,t,e,s))return;let n=await i.startParse(a,e);await i.startDownload(t,s),console.log(JSON.stringify(n,null,2))}f.exports={startDownloadSlideShare:P}});exports.a = S;
@@ -1,3 +1,3 @@
1
1
  #! /usr/bin/env node
2
- "use strict";var _chunkNEJSZOZXjs = require('../chunk-NEJSZOZX.js');var x=_chunkNEJSZOZXjs.b.call(void 0, (_,b)=>{var f=_chunkNEJSZOZXjs.a.call(void 0, "fs"),c=_chunkNEJSZOZXjs.a.call(void 0, "path"),q=_chunkNEJSZOZXjs.a.call(void 0, "axios"),S=_chunkNEJSZOZXjs.a.call(void 0, "marked"),$=_chunkNEJSZOZXjs.a.call(void 0, "glob"),j=_chunkNEJSZOZXjs.a.call(void 0, "https");async function v(e,s,l=!1){try{let r=await q({url:e,method:"GET",responseType:"stream",httpsAgent:new j.Agent({rejectUnauthorized:l})}),t=f.createWriteStream(s);return r.data.pipe(t),new Promise((u,m)=>{t.on("finish",u),t.on("error",m)})}catch(r){console.log("download error",e,s,r)}}async function E(e,s,l,r,t){let u=f.readFileSync(l,"utf-8"),m=S.lexer(u),y=i=>{let n=[];return i.forEach(o=>{o.type==="link"&&n.push(o),o.type==="table"&&o.rows.forEach(a=>{a.forEach(p=>{p.tokens&&(n=n.concat(y(p.tokens)))})}),o.tokens&&(n=n.concat(y(o.tokens))),o.items&&o.items.forEach(a=>{n=n.concat(y(a.tokens))})}),n};for(let i of y(m)){let n=[".mp3",".mp4",".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".epub",".mobi",".zip",".rar",".7z",".tar",".gz"].find(o=>i.href.endsWith(o)||i.text.endsWith(o));if(i.type==="link"&&n){let o=i.href,a=c.basename(l).replace(".md",""),p=c.join(e,s,a);f.existsSync(p)||f.mkdirSync(p,{recursive:!0});let h=a+"_"+i.text.replace(/[<>:"/\\|?*\n\r]+/g,"_").replace(n,"")+"_"+c.basename(decodeURIComponent(o));h.endsWith(n)||(h+=n);let w=c.join(p,h);if(!f.existsSync(w)&&(console.log(`Downloading ${o} to ${w}`),await v(o,w,t),r)){let D=new Date().toISOString(),g=`${s},${a},${h},${o},${D}
3
- `;f.appendFileSync(r,g)}}}}function O(e){let s=e.docsDir||c.join(process.cwd(),"docs"),l=e.downloadDir||c.join(process.cwd(),"download");$.sync(`${s}/**/*.md`).forEach(t=>{let u=c.relative(s,t),m=c.dirname(u);E(l,m,t,e.csv,e.insecure).catch(console.error)})}var z={command:"*",describe:"jsd1",builder:{docs:{alias:"d",describe:"docs directory",demandOption:!1,default:"docs",type:"string"},output:{alias:"o",describe:"output directory",demandOption:!1,default:"download",type:"string"},csv:{alias:"c",describe:"csv log file",demandOption:!1,default:"output.csv",type:"string"},insecure:{alias:"k",describe:"allow insecure server connections",demandOption:!1,default:!1,type:"boolean"}},handler(e){(async()=>O({docsDir:e.docs,downloadDir:e.output,csv:e.csv,insecure:!e.insecure}))()}};b.exports=z});var W=()=>{let e=_chunkNEJSZOZXjs.a.call(void 0, "yargs").scriptName("jsd1");e.command(x());let s=e.parse()};W();
2
+ "use strict";var _chunkL6N6J3JCjs = require('../chunk-L6N6J3JC.js');var _chunkNEJSZOZXjs = require('../chunk-NEJSZOZX.js');var b=_chunkNEJSZOZXjs.b.call(void 0, (F,x)=>{var u=_chunkNEJSZOZXjs.a.call(void 0, "fs"),i=_chunkNEJSZOZXjs.a.call(void 0, "path"),k=_chunkNEJSZOZXjs.a.call(void 0, "axios"),_=_chunkNEJSZOZXjs.a.call(void 0, "marked"),$=_chunkNEJSZOZXjs.a.call(void 0, "glob"),j=_chunkNEJSZOZXjs.a.call(void 0, "https");async function v(e,n,p=!1){try{let a=await k({url:e,method:"GET",responseType:"stream",httpsAgent:new j.Agent({rejectUnauthorized:p})}),r=u.createWriteStream(n);return a.data.pipe(r),new Promise((m,h)=>{r.on("finish",m),r.on("error",h)})}catch(a){console.log("download error",e,n,a)}}async function E(e,n,p,a,r){let m=u.readFileSync(p,"utf-8"),h=_.lexer(m),w=o=>{let s=[];return o.forEach(t=>{t.type==="link"&&s.push(t),t.type==="table"&&t.rows.forEach(c=>{c.forEach(d=>{d.tokens&&(s=s.concat(w(d.tokens)))})}),t.tokens&&(s=s.concat(w(t.tokens))),t.items&&t.items.forEach(c=>{s=s.concat(w(c.tokens))})}),s};for(let o of w(h)){let s=[".mp3",".mp4",".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".epub",".mobi",".zip",".rar",".7z",".tar",".gz"].find(t=>o.href.endsWith(t)||o.text.endsWith(t));if(o.type==="link"){let t=o.href,c=i.basename(p).replace(".md",""),d=i.join(e,n,c);if(u.existsSync(d)||u.mkdirSync(d,{recursive:!0}),o.href.startsWith("https://www.slideshare.net")){let f=c+"_"+o.text.replace(/[<>:"/\\|?*\n\r]+/g,"_").replace(".pptx","")+"_";_chunkL6N6J3JCjs.a.call(void 0, ).startDownloadSlideShare(o.href,d,f,saveType=["pptx"])}else if(s){let f=c+"_"+o.text.replace(/[<>:"/\\|?*\n\r]+/g,"_").replace(s,"")+"_"+i.basename(decodeURIComponent(t));f.endsWith(s)||(f+=s);let y=i.join(d,f);if(!u.existsSync(y)&&(console.log(`Downloading ${t} to ${y}`),await v(t,y,r),a)){let D=new Date().toISOString(),S=`${n},${c},${f},${t},${D}
3
+ `;u.appendFileSync(a,S)}}}}}function O(e){let n=e.docsDir||i.join(process.cwd(),"docs"),p=e.downloadDir||i.join(process.cwd(),"download");$.sync(`${n}/**/*.md`).forEach(r=>{let m=i.relative(n,r),h=i.dirname(m);E(p,h,r,e.csv,e.insecure).catch(console.error)})}var W={command:"*",describe:"jsd1",builder:{docs:{alias:"d",describe:"docs directory",demandOption:!1,default:"docs",type:"string"},output:{alias:"o",describe:"output directory",demandOption:!1,default:"download",type:"string"},csv:{alias:"c",describe:"csv log file",demandOption:!1,default:"output.csv",type:"string"},insecure:{alias:"k",describe:"allow insecure server connections",demandOption:!1,default:!1,type:"boolean"}},handler(e){(async()=>O({docsDir:e.docs,downloadDir:e.output,csv:e.csv,insecure:!e.insecure}))()}};x.exports=W});var z=()=>{let e=_chunkNEJSZOZXjs.a.call(void 0, "yargs").scriptName("jsd1");e.command(b());let n=e.parse()};z();
@@ -1,2 +1,2 @@
1
1
  #! /usr/bin/env node
2
- "use strict";var _chunkNEJSZOZXjs = require('../chunk-NEJSZOZX.js');var f=_chunkNEJSZOZXjs.b.call(void 0, (q,g)=>{var p=_chunkNEJSZOZXjs.a.call(void 0, "axios"),x=_chunkNEJSZOZXjs.a.call(void 0, "cheerio"),l=_chunkNEJSZOZXjs.a.call(void 0, "fs"),a=_chunkNEJSZOZXjs.a.call(void 0, "path"),{format:u}=_chunkNEJSZOZXjs.a.call(void 0, "date-fns"),b=_chunkNEJSZOZXjs.a.call(void 0, "pptxgenjs"),m=_chunkNEJSZOZXjs.a.call(void 0, "winston"),d=m.createLogger({level:"info",format:m.format.combine(m.format.timestamp(),m.format.printf(({timestamp:i,level:t,message:e})=>`${i} [${t}]: ${e}`)),transports:[new m.transports.Console,new m.transports.File({filename:"combined.log"})]});function w(i,t){let e=new b;l.readdirSync(i).filter(r=>/\.(jpg|jpeg|png)$/.test(r)).forEach(r=>{let n=e.addSlide(),o=a.join(i,r);n.addImage({path:o,x:0,y:0,w:"100%",h:"100%"})}),e.writeFile(t)}var h=class{constructor(){this.url="",this.filename="",this.title="",this.images=[],this.meta={}}urlParse(t){(t.startsWith("'")&&t.endsWith("'")||t.startsWith('"')&&t.endsWith('"'))&&(t=t.slice(1,-1)),!t.startsWith("http://")&&!t.startsWith("https://")&&(t="https://"+t);let e=t.split("/").slice(3,5).join("_").replace(/[^0-9a-zA-Z]+/g,"-");return e.trim()===""&&(d.debug("Something wrong to get filename from URL, fallback to result.pdf"),e="output"),{url:t,filename:e}}isExists(t,e,s){let{url:r,filename:n}=this.urlParse(t),o=a.join(e,`${n}.${s}`);return l.existsSync(o)&&console.log("file exist!",o),l.existsSync(o)}async startParse(t){let{url:e,filename:s}=this.urlParse(t);this.url=e,this.filename=s;let n=(await p.get(this.url)).data,o=x.load(n);return this.title=`pdf_images_${u(new Date,"yyyy/MM/dd_HH:mm:ss")}`,this.images=o('img[data-testid="vertical-slide-image"]').toArray(),d.debug(this.images),this.getMeta(o)}async startDownload(t,e){if(!this.images||this.images.length===0){d.debug("no image to download");return}let s=a.resolve(a.join(t,this.filename));l.existsSync(s)||l.mkdirSync(s,{recursive:!0});for(let r of this.images){d.debug(r);let n=r.attribs.srcset.split(",").pop().split(" ")[1];d.debug(n),await this.saveFile(n,s)}e.includes("pdf")&&createPDF(s,a.join(t,`${this.filename}.pdf`)),e.includes("pptx")&&w(s,a.join(t,`${this.filename}.pptx`)),console.log("Download completed!",a.join(t,`${this.filename}.pptx`))}async saveFile(t,e){let s=a.join(e,a.basename(t));if(l.existsSync(s)){d.debug(`file exist! ${s}`);return}(await p.get(t,{responseType:"stream"})).data.pipe(l.createWriteStream(s))}clean(t){return String(t).trim()}getTitle(t){try{return this.clean(t("span.j-title-breadcrumb").text())}catch (e2){return""}}getDesc(t){try{return t("ol.transcripts").children("li").toArray().map(s=>this.clean(t(s).text()))}catch (e3){return[]}}getSummary(t){try{return this.clean(t("#slideshow-description-paragraph").text())}catch (e4){return""}}getAuthor(t){try{return this.clean(t('span[itemprop="name"]').text())}catch (e5){return""}}getPublish(t){try{return this.clean(t('time[itemprop="datePublished"]').text())}catch (e6){return""}}getMeta(t){return this.meta={url:this.url,name:this.filename,title:this.getTitle(t),summary:this.getSummary(t),publish:this.getPublish(t),desc:this.getDesc(t),author:this.getAuthor(t),created_at:u(new Date,"yyyy/MM/dd HH:mm:ss")},this.meta}};async function P(i,t,e){let s=new h;if(s.isExists(i,t,e))return;let r=await s.startParse(i);await s.startDownload(t,e),console.log(JSON.stringify(r,null,2))}var S={command:"*",describe:"ssdl",builder:{url:{alias:"u",describe:"URL",demandOption:!0,type:"string"},dir:{alias:"d",describe:"Save directory",demandOption:!1,default:"./download",type:"string"}},handler(i){(async()=>P(i.url,i.dir,["pptx"]))()}};g.exports=S});var j=()=>{let i=_chunkNEJSZOZXjs.a.call(void 0, "yargs").scriptName("ssdl");i.command(f());let t=i.parse()};j();
2
+ "use strict";var _chunkL6N6J3JCjs = require('../chunk-L6N6J3JC.js');var _chunkNEJSZOZXjs = require('../chunk-NEJSZOZX.js');var{startDownloadSlideShare:n}=_chunkL6N6J3JCjs.a.call(void 0, ),s={command:"*",describe:"ssdl",builder:{url:{alias:"u",describe:"URL",demandOption:!0,type:"string"},dir:{alias:"d",describe:"Save directory",demandOption:!1,default:"./download",type:"string"},filename:{alias:"f",describe:"filename",demandOption:!1,type:"string"}},handler(e){(async()=>n(e.url,e.dir,e.filename,["pptx"]))()}},i=()=>{let e=_chunkNEJSZOZXjs.a.call(void 0, "yargs").scriptName("ssdl");e.command(s);let r=e.parse()};i();
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "xl1",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "just some xlsx script.",
5
5
  "bin": {
6
6
  "bash1": "dist/bash1/index.js",
7
7
  "jsh1": "dist/jsh1/index.js",
8
8
  "jsd1": "dist/jsd1/index.js",
9
9
  "jsss": "dist/jsss/index.js",
10
+ "ssdl": "dist/ssdl/index.js",
10
11
  "xl1": "dist/xl1/index.js"
11
12
  },
12
13
  "files": [