포기했습니다.
귀차니즘....
# 1차
[code]
var CronJob = require('cron').CronJob;
var request = require('request');
var fs = require('fs');
var DataDir = './data/';
var url = '';
global.job_tree = [];
// Data 폴더를 검색 하여 파일만큼 처리
fs.readdir(DataDir, function (err, filenames){
var i;
for(i = 0; i < filenames.length; i++) {
ReadFile(DataDir, filenames[i]);
}
});
//변경된 파일이 있다면 종료 후 재시작 한다.
fs.watch(DataDir, (event, filename) => {
if(filename) {
console.log('내용변경: '+filename);
ReadFile(DataDir, filename);
}
});
// 파일 READ 하여 크론탭 생성
function ReadFile(Dir, filenames) {
File = Dir+filenames;
fs.readFile(File, function (err, data) {
if(err) return;
if(global.job_tree[filenames]) global.job_tree[filenames].stop();
new_data = data.toString().split("\r\n");
global.job_tree[filenames] = new CronJob({
cronTime: new_data[0],
onTick: function(data) {
url = new_data[1];
request(url, function(error, response, html) {
console.log(url);
});
},
start: false,
timeZone: 'Asia/Seoul'
});
global.job_tree[filenames].start();
});
}
[/code]
# 2차
[code]
var CronJobManager = require('cron-job-manager'),
manager = new CronJobManager( // this creates a new manager and adds the arguments as a new job.
'a_key_string_to_call_this_job',
'0 30 * * * *', // the crontab schedule
function() { console.log("tick - what should be executed?") },
{
start:true,
timeZone:"Asia/Seoul",
completion: function() {console.log("a_key_string_to_call_this_job has stopped....")}
}
);
var request = require('request');
var md5 = require('md5');
var fs = require('fs');
var DataDir = './data/';
var JobList = new Array();
// Data 폴더를 검색 하여 파일만큼 처리
fs.readdir(DataDir, function(err, filenames){
for(var index in filenames) {
fs.readFile(DataDir+filenames[index],
(function(filename, err, data) {
key = 'job_' + md5(filename[index]);
JobList.push(key);
new_data = data.toString().split("\r\n");
//console.log({new_data, key});
manager.add(key, new_data[0], function(e) {
request(new_data[1], function(error, response, html) {
console.log(new_data[1]);
});
//console.log(url);
});
manager.start(key);
}).bind(null, filenames[index])
);
}
});
[/code]
댓글 8개
게시글 목록
| 번호 | 제목 |
|---|---|
| 1717629 | |
| 1717626 | |
| 1717625 | |
| 1717621 | |
| 1717619 | |
| 1717611 | |
| 1717610 | |
| 1717609 | |
| 1717607 | |
| 1717601 | |
| 1717598 | |
| 1717591 | |
| 1717590 | |
| 1717583 | |
| 1717575 | |
| 1717572 | |
| 1717568 | |
| 1717566 | |
| 1717549 | |
| 1717545 | |
| 1717533 | |
| 1717512 | |
| 1717511 | |
| 1717508 | |
| 1717495 | |
| 1717479 | |
| 1717473 | |
| 1717470 | |
| 1717463 | |
| 1717452 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기