Created
August 24, 2015 10:49
-
-
Save mactive/6820549d079a29d63177 to your computer and use it in GitHub Desktop.
Promise Sequences
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cityList = [ | |
{key: "610100", label:"西安", daLabel:"西安市",region:"华南"}, | |
{key: "130100", label:"石家庄", daLabel:"石家庄市",region:"华南"}, | |
{key: "350200", label:"厦门", daLabel:"厦门市",region:"华南"}, | |
{key: "410100", label:"郑州", daLabel:"郑州市",region:"华南"}, | |
{key: "440600", label:"佛山", daLabel:"佛山市",region:"华南"}, | |
{key: "350100", label:"福州", daLabel:"福州市",region:"华南"}, | |
{key: "440100", label:"广州", daLabel:"广州市",region:"华南"}, | |
{key: "230100", label:"哈尔滨", daLabel:"哈尔滨市",region:"华南"}, | |
{key: "110100", label:"北京", daLabel:"北京市",region:"华南"}, | |
{key: "120100", label:"天津", daLabel:"天津市",region:"华南"}, | |
{key: "440300", label:"深圳", daLabel:"深圳市",region:"华南"}, | |
{key: "340100", label:"合肥", daLabel:"合肥市",region:"华东"}, | |
{key: "210100", label:"沈阳", daLabel:"沈阳市",region:"华东"}, | |
{key: "310100", label:"上海", daLabel:"上海市",region:"华东"}, | |
{key: "330100", label:"杭州", daLabel:"杭州市",region:"华东"}, | |
{key: "320500", label:"苏州", daLabel:"苏州市",region:"华东"}, | |
{key: "320200", label:"无锡", daLabel:"无锡市",region:"华东"}, | |
{key: "210200", label:"大连", daLabel:"大连市",region:"华东"}, | |
{key: "330200", label:"宁波", daLabel:"宁波市",region:"华东"}, | |
{key: "330300", label:"温州", daLabel:"温州市",region:"华东"}, | |
{key: "370100", label:"济南", daLabel:"济南市",region:"华东"}, | |
{key: "441900", label:"东莞", daLabel:"东莞市",region:"华东"}, | |
{key: "510100", label:"成都", daLabel:"成都市",region:"西南"}, | |
{key: "500100", label:"重庆", daLabel:"重庆市",region:"西南"}, | |
{key: "150100", label:"呼和浩特", daLabel:"呼和浩特市",region:"西南"}, | |
{key: "530100", label:"昆明", daLabel:"昆明市",region:"西南"}, | |
{key: "450100", label:"南宁", daLabel:"南宁市",region:"西南"}, | |
{key: "420100", label:"武汉", daLabel:"武汉市",region:"西南"}, | |
{key: "430100", label:"长沙", daLabel:"长沙市",region:"西南"}, | |
{key: "150200", label:"包头", daLabel:"包头市",region:"西南"}, | |
{key: "220100", label:"长春", daLabel:"长春市",region:"西南"} | |
] | |
module.exports = cityList |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
mongoose = require("mongoose") | |
fs = require("fs") | |
csv = require('csv-parser') | |
moment = require("moment") | |
http = require("http") | |
#internal package | |
cityList = require("./cityList") | |
Promise = require('promise') | |
websites = ["all","58.com", "ganji.com", "taoche.com", "che168.com", "baixing.com"] | |
getCitySendRate = (website,cityDaName,region)-> | |
url = "http://da.kanche.com/da/promotion_center/vehicle_with_sharjob/promote?begin=2015-07-25&end=2015-08-24" | |
url += "&cityLevel=one&contracted=true&timeLevel=day" | |
url += "&city="+ encodeURIComponent(cityDaName) + "&website="+website | |
p = new Promise((resolve,reject)-> | |
http.get(url,(res)-> | |
data = '' | |
res.on('data', (chunk)-> | |
data += chunk | |
# console.log data.length | |
) | |
res.on('end',()-> | |
array = JSON.parse(data) | |
# 汇总 | |
summary = | |
city:cityDaName | |
shareSuccessCount : 0 | |
shareCount : 0 | |
array.forEach((item)-> | |
sendSuccessRate = item.shareSuccessCount/item.shareCount | |
# console.log item.city, item.time, sendSuccessRate.toFixed(2) | |
summary.shareSuccessCount += item.shareSuccessCount | |
summary.shareCount += item.shareCount | |
) | |
sendSuccessRate = summary.shareSuccessCount/summary.shareCount | |
result_text = region+","+summary.city+","+sendSuccessRate.toFixed(2) | |
# console.log result_text 都是这里搞的鬼 | |
resolve result_text | |
) | |
) | |
) | |
result = { | |
"华南":0 | |
"华东":0 | |
"西南":0 | |
} | |
pList = [] | |
cityList.map((item)-> | |
console.log 'item',item.label | |
temp = getCitySendRate('all',item.daLabel,item.region) | |
pList.push(temp) | |
) | |
Promise.all( | |
pList | |
).then((resolve)-> | |
console.log 'allDone' | |
console.log resolve | |
) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment