어제 만들다가 버린 웹크론...
포기했습니다.
귀차니즘....
# 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개
만들다가 말아버린거라...
언젠간 공개 하겠습니다 ㅋㅋㅋ
다른 프로그램으로는
http://blog.z9n.net/126
도 있습니다.
게시판 목록
자유게시판
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 공지 |
|
1주 전 | 10 | |
| 199448 | 3개월 전 | 501 | ||
| 199447 | 3개월 전 | 272 | ||
| 199446 | 3개월 전 | 256 | ||
| 199445 | 3개월 전 | 241 | ||
| 199444 |
비버팩토리
|
3개월 전 | 212 | |
| 199443 | 3개월 전 | 509 | ||
| 199442 | 3개월 전 | 310 | ||
| 199441 | 3개월 전 | 427 | ||
| 199440 | 3개월 전 | 300 | ||
| 199439 | 3개월 전 | 281 | ||
| 199438 |
|
3개월 전 | 496 | |
| 199437 | 3개월 전 | 190 | ||
| 199436 | 3개월 전 | 197 | ||
| 199435 | 3개월 전 | 299 | ||
| 199434 | 3개월 전 | 242 | ||
| 199433 | 3개월 전 | 269 | ||
| 199432 | 3개월 전 | 222 | ||
| 199431 | 3개월 전 | 373 | ||
| 199430 | 3개월 전 | 284 | ||
| 199429 | 3개월 전 | 423 | ||
| 199428 | 3개월 전 | 285 | ||
| 199427 | 3개월 전 | 240 | ||
| 199426 |
|
3개월 전 | 273 | |
| 199425 |
techstar
|
3개월 전 | 271 | |
| 199424 | 3개월 전 | 230 | ||
| 199423 | 3개월 전 | 267 | ||
| 199422 | 3개월 전 | 402 | ||
| 199421 | 3개월 전 | 226 | ||
| 199420 | 3개월 전 | 389 | ||
| 199419 | 3개월 전 | 294 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기