Offline watch
This commit is contained in:
2017-08-23 00:20:53 +02:00
parent 44042f5d5e
commit acab4b1908
5 changed files with 142 additions and 55 deletions

View File

@@ -0,0 +1,34 @@
/*
JUST TO WATCH OFFLINE
*/
const fs = require('fs');
var crunch = {};
crunch.session_save = (session)=>{
var net = `# Netscape HTTP Cookie File\n
# http://curl.haxx.se/rfc/cookie_spec.html\n
# This is a generated file! Do not edit.\n\n`;
var old_exp = 0;
for(var i = 0;i<session.length;i++){
if(typeof session[i].expirationDate == 'undefined'){
session[i].expirationDate = old_exp;
}
if(session[i].expirationDate>old_exp){
old_exp = session[i].expirationDate;
}
net += session[i].domain+' '+session[i].httpOnly.toString().toUpperCase()+' '+session[i].path+' '+session[i].secure.toString().toUpperCase()+' '+Math.ceil(session[i].expirationDate)+' '+session[i].name+' '+session[i].value+'\n';
}
console.log(net);
fs.writeFile(global.dir+"/tmp/c", net, function(err) {
if(err) {
return console.log(err);
}
console.log("T!");
});
}
module.exports = crunch;

View File

@@ -5,6 +5,8 @@ const {
session
} = require('electron');
const crunch = require('./../crunchyroll')
class browser {
constructor(url){
console.log("TEST")
@@ -17,7 +19,8 @@ class browser {
})
setInterval(function(){
session.defaultSession.cookies.get({url:'http://crunchyroll.com'}, (error, cookies) => {
console.log(error, cookies)
//console.log(error, cookies)
crunch.session_save(cookies);
})
},3000)
var window = this.window

View File

@@ -1,5 +1,6 @@
const { spawn } = require('child_process');
const ipcMain = require('electron').ipcMain;
const dl_routine = require('./youtube-dl.routine')
console.log(global.dir);
var orig_path = "";
@@ -54,16 +55,9 @@ var yt_dl = class{
var log = [];
var me = this;
var ls;
switch (format) {
case "mp3":
ls = spawn(global.dir+'/lib/youtube-dl', ['-x','--audio-format','mp3','-i',this.url,'-o',path+'/%(title)s.%(ext)s']);
break;
case "mp4":
ls = spawn(global.dir+'/lib/youtube-dl', ['-f','bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4',this.url,'-o',path+'/%(title)s.%(ext)s']);
break;
default:
}
var m = dl_routine(path,this.url,format);
ls = spawn(m[0],m[1]);
if(path == ''){
//ls = spawn(global.dir+'/lib/youtube-dl', ['-x','--audio-format','mp3','-i',this.url]);
}else{

View File

@@ -0,0 +1,31 @@
module.exports = (path,url,format)=>{
var command = global.dir+'/lib/youtube-dl';
var param = [];
console.log(url);
if(url.match('youtube')){
console.log('youtube')
switch (format) {
case "mp3":
param = ['-x','--audio-format','mp3','-i',url,'-o',path+'/%(title)s.%(ext)s'];
break;
case "mp4":
param = ['-f','bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4',url,'-o',path+'/%(title)s.%(ext)s'];
break;
default:
}
}
else if(url.match('crunchyroll')){
console.log('crunchyroll')
param = ['--cookie', global.dir+'/tmp/c', '--all-subs', '--sub-format', 'srt', '--write-sub', '--embed-subs',url,'-o',path+'/%(title)s.%(ext)s'];
}
return [command,param];
}