function process_nsxeod(count,n,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn)
{
try
{
var mon=count[n].split('-')[0];
var m=count[n].split('-')[1];
var d=count[n].split('-')[2];
var yy=count[n].split('-')[3];
var y=yy.substr(2,2);
var currdate1=new Date();
var year1=currdate1.getFullYear();
if(year1==yy){
var csv = require('ya-csv');
var async = require('async');
var htmlparser = require("htmlparser");
var DomHandler = require("DomHandler");
var DomUtils = require("DomUtils");
var DomElementType = require('DomElementType');
var http = require('http'), fs = require('fs'), request = require('request');
var urlStockinfo = "http://www.nationalspotexchange.com/Sitepages/BhavCopyDateWise.aspx";
var r = request.get(urlStockinfo);
var resData = "";
var resData1 = "";
r.end();
r.on('response', function(response) {
response.on('data', function(chunk) {
resData += chunk;
});
});
r.on('end', function ()
{
var viewState_value = "";
var eventValidation_value = "";
var mImgBtnGo_X = "";
try{
var parser = new htmlparser.Parser(
{
onopentag: function(name, attribs){
if(name === "input" && attribs["id"] === "__VIEWSTATE"){
viewState_value = attribs["value"];
}
},
ontext:function(text){
},
onclosetag: function(tagname){
}
});
parser.write(resData);
parser.done();
var parser1 = new htmlparser.Parser(
{
onopentag: function(name, attribs){
if(name === "input" && attribs["id"] === "__EVENTVALIDATION"){
eventValidation_value = attribs["value"];
}
},
ontext:function(text){
},
onclosetag: function(tagname){
}
});
parser1.write(resData);
parser1.done();
new htmlparser.FeedHandler(function(error, feed){
console.log('\n Error : '+error);
});
}catch(err)
{
if(err){document.getElementById("om").innerHTML+="<br/>"+err;}
}
var r1 = request
(
{
method: 'POST',
uri: urlStockinfo,
headers: {"User-Agent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11",
"Accept-Encoding": "utf-8",
"Accept": "text/plain,application/csv,*/*;q=0.3",
"Cookie": "cookie"
},
form:{'__VIEWSTATE':viewState_value.trim(),'__EVENTVALIDATION':eventValidation_value.trim(),'mTbdate':m+'/'+d+'/'+yy,
'mBtnGo':'GO'}
}
);
r1.on('response', function(response) {
response.on('data', function(chunk) {
resData1 += chunk;
});
});
var viewState_value1 = "";
var eventValidation_value1 = "";
var downloadLink = "";
r1.on('end', function()
{
try{
var parser2 = new htmlparser.Parser(
{
onopentag: function(name, attribs){
if(name === "input" && attribs["id"] === "__VIEWSTATE"){
viewState_value1 = attribs["value"];
}
},
ontext:function(text){
},
onclosetag: function(tagname){
}
});
parser2.write(resData1);
parser2.done();
var parser3 = new htmlparser.Parser(
{
onopentag: function(name, attribs)
{
if(name === "input" && attribs["id"] === "__EVENTVALIDATION"){
eventValidation_value1 = attribs["value"];
}
},
ontext:function(text){
},
onclosetag: function(tagname){
}
});
parser3.write(resData1);
parser3.done();
var parser4 = new htmlparser.Parser(
{
onopentag: function(name, attribs)
{
if(name === "a" && attribs["class"] === "bluelinks"){
downloadLink = attribs["href"];
}
},
ontext:function(text){
},
onclosetag: function(tagname){
}
});
parser4.write(resData1);
parser4.done();
new htmlparser.FeedHandler(function(error, feed){
console.log('\n Error : '+error);
});
}catch(err)
{
if(err){document.getElementById("om").innerHTML+="<br/> An error occured while downloading NSX_EOD file.";}
}
request
(
{
method: 'POST',
uri: urlStockinfo,
headers: {"User-Agent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11",
"Accept-Encoding": "utf-8",
"Accept": "text/plain,application/csv,*/*;q=0.3",
"Cookie": "cookie"
},
form:{'__VIEWSTATE':viewState_value.trim(),'__EVENTVALIDATION':eventValidation_value.trim(),'mTbdate':m+'/'+d+'/'+yy,
'mBtnGo':'GO'}
},
function(error, response, body) {
if(response != null)
{
if(response.statusCode != null || response.statusCode != "")
{
if (!error && response.statusCode == 200)
{
downloadnsxcsv(response.statusCode);
}
else
{
downloadnsxcsv(404);
}
}else
{
downloadnsxcsv(404);
}
}else
{
downloadnsxcsv(404);
}
}
);
function downloadnsxcsv(code)
{
var currdate=new Date();
var year=currdate.getFullYear();
if(code==200 && yy==year)
{
document.getElementById("om").innerHTML+="<br/>nsxbhavcopy"+d+m+yy+".csv is dwonloading..";
var fileNameCsv = downloadpath+"nsxbhavcopy"+d+m+yy+".csv"
var outCsv = fs.createWriteStream(fileNameCsv);
var finalurl = "http://www.nationalspotexchange.com/"+downloadLink.substring(4);
var r2 = request
(
{
method: 'GET',
uri: finalurl,
headers: {
"User-Agent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11",
"Referer": "http://www.nationalspotexchange.com",
"Accept-Encoding": "utf-8",
"Accept": "text/plain,application/csv,*/*;q=0.3",
"Cookie": "cookie"
}
}
);
r2.pipe(outCsv);
r2.on('end',function(){
document.getElementById("om").innerHTML+="<br/>nsxbhavcopy"+d+m+yy+".csv is dwonloaded..";
addlog(logpath, 'nsxbhavcopy'+d+m+yy+'.csv is downloaded..');
n++;
if(count.length>n)
{
loadprogressbar();
setTimeout(function (){process_nsxeod(count,n,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn)}, 1000);
document.getElementById("om").innerHTML+='..';
}
else
{
Ext.getCmp('pbar3').updateProgress(0);
setTimeout(function(){process_nesl(count,0,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn)},2000);
}
});
r2.on('error',function(){
document.getElementById("om").innerHTML+="<br/>Problem in dwonloading file nsxbhavcopy"+d+m+yy+".csv ";
setTimeout(function (){process_nsxeod(count,n,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn)}, 1000);
});
}
else
{
document.getElementById("om").innerHTML+="<br/><font color=red>nsxbhavcopy"+d+m+yy+".csv file is not found on sever.</font>";
n++;
if(count.length>n)
{
loadprogressbar();
setTimeout(function (){process_nsxeod(count,n,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn)}, 1000);
document.getElementById("om").innerHTML+='..';
}
else
{
Ext.getCmp('pbar3').updateProgress(0);
setTimeout(function(){process_nesl(count,0,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn)},1000);
}
}
}
});
});
}
else
{
n++;
if(count.length>n)
{
process_nsxeod(count,n,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn);
}
else
{
Ext.getCmp('pbar3').updateProgress(0);
setTimeout(function(){process_nesl(count,0,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn)},1000);
}
}
}catch(err)
{
document.getElementById("om").innerHTML+="<br/>An error occured while processing nsxbhavcopy"+d+m+yy+".csv";
n++;
if(count.length>n)
{
loadprogressbar();
process_nsxeod(count,n,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn);
}
else
{
Ext.getCmp('pbar3').updateProgress(0);
setTimeout(function(){process_nesl(count,0,baseurl,downloadpath,unzippath,outputpath,logpath,fromd,tod,sn)},1000);
}
}
}