Showing
1 changed file
with
18 additions
and
16 deletions
| ... | @@ -6,46 +6,47 @@ var router = express.Router(); | ... | @@ -6,46 +6,47 @@ var router = express.Router(); |
| 6 | var url = "https://www.videocardbenchmark.net/gpu_value.html#all-time-value"; | 6 | var url = "https://www.videocardbenchmark.net/gpu_value.html#all-time-value"; |
| 7 | //var Graphic_card = []; | 7 | //var Graphic_card = []; |
| 8 | //var Price = []; | 8 | //var Price = []; |
| 9 | -var Graphic_card_info = new Array(); | 9 | +var exhange_rate = 0; |
| 10 | +var Graphic_card_info = new Array(); //그래픽카드정보 저장 | ||
| 10 | Graphic_card_info[0] = { | 11 | Graphic_card_info[0] = { |
| 11 | - "name" : "", | 12 | + "name" : "", //물품이름 |
| 12 | - "price" : 0, | 13 | + "price" : 0, //물품가격 |
| 13 | - "link" : "" | 14 | + "link" : "", //물품정보링크 |
| 15 | + "benchmark" : 0 //물품성능 | ||
| 14 | } | 16 | } |
| 15 | var count = 50; | 17 | var count = 50; |
| 16 | 18 | ||
| 17 | -request(url, function(error, response, html){ | 19 | +request(url, function(error, response, html){ //크롤링 |
| 18 | if(!error){ | 20 | if(!error){ |
| 19 | var $ = cheerio.load(html); | 21 | var $ = cheerio.load(html); |
| 20 | var i = 0; | 22 | var i = 0; |
| 21 | $('ul.chartlist > li > a').each(function(){ | 23 | $('ul.chartlist > li > a').each(function(){ |
| 22 | info = new Object(); | 24 | info = new Object(); |
| 23 | var data = $(this); | 25 | var data = $(this); |
| 24 | - info.name = data.find("span.prdname").text(); | 26 | + info.name = data.find("span.prdname").text(); //물품 이름 |
| 25 | - info.price = Number(data.find("span.price-neww").text().split(',').join('')); | 27 | + info.price = Number(data.find("span.price-neww").text().split(',').join('')); //물품 가격 |
| 26 | - info.link = data.attr("href"); | 28 | + info.link = data.attr("href"); //물품 정보링크 |
| 29 | + info.benchmark = Number(data.find("span.mark-neww").text()); //물품 성능 | ||
| 27 | Graphic_card_info.push(info); | 30 | Graphic_card_info.push(info); |
| 28 | i++ | 31 | i++ |
| 29 | if(i >= count){//50개만 저장 | 32 | if(i >= count){//50개만 저장 |
| 30 | return false; | 33 | return false; |
| 31 | } | 34 | } |
| 32 | }) | 35 | }) |
| 33 | - | ||
| 34 | - | ||
| 35 | for(var i = 1; i <= count; i++){ | 36 | for(var i = 1; i <= count; i++){ |
| 36 | - console.log(i + "."+Graphic_card_info[i].name+" - ("+Graphic_card_info[i].price+"$) - link : "+Graphic_card_info[i].link); | 37 | + console.log(i + "."+Graphic_card_info[i].name+" - ("+Graphic_card_info[i].price+"$) - link : "+Graphic_card_info[i].link + " /benchmark : "+Graphic_card_info[i].benchmark); |
| 37 | } | 38 | } |
| 38 | } | 39 | } |
| 39 | }); | 40 | }); |
| 40 | 41 | ||
| 41 | router.get('/',function(req,res){ | 42 | router.get('/',function(req,res){ |
| 42 | console.log('Main page'); | 43 | console.log('Main page'); |
| 43 | - res.render('main',{}); | 44 | + res.render('main',{});//메인 페이지 |
| 44 | }); | 45 | }); |
| 45 | 46 | ||
| 46 | router.get('/rank',function(req,res){ | 47 | router.get('/rank',function(req,res){ |
| 47 | console.log('Rank page'); | 48 | console.log('Rank page'); |
| 48 | - res.render('rank',{ | 49 | + res.render('rank',{ //전체순위(가성비) |
| 49 | graphic_card_info : Graphic_card_info, | 50 | graphic_card_info : Graphic_card_info, |
| 50 | count : count | 51 | count : count |
| 51 | }); | 52 | }); |
| ... | @@ -53,15 +54,16 @@ router.get('/rank',function(req,res){ | ... | @@ -53,15 +54,16 @@ router.get('/rank',function(req,res){ |
| 53 | 54 | ||
| 54 | router.post('/search',function(req,res,next){ | 55 | router.post('/search',function(req,res,next){ |
| 55 | console.log('Money : ' + req.body.money); | 56 | console.log('Money : ' + req.body.money); |
| 56 | - var Money = req.body.money; | 57 | + var Money = req.body.money; //입력한 예산 |
| 57 | var Searchlist = new Array(); | 58 | var Searchlist = new Array(); |
| 58 | var Searchcount = 0; | 59 | var Searchcount = 0; |
| 59 | Searchlist[0] = { | 60 | Searchlist[0] = { |
| 60 | "name" : "", | 61 | "name" : "", |
| 61 | "price" : 0, | 62 | "price" : 0, |
| 62 | - "link" : "" | 63 | + "link" : "", |
| 64 | + "benchmark" : 0 | ||
| 63 | }; | 65 | }; |
| 64 | - for(var i = 1; i <= count; i++){ | 66 | + for(var i = 1; i <= count; i++){ //가격이 예산이하인 물품만 저장 |
| 65 | if(Graphic_card_info[i].price <= Money){ | 67 | if(Graphic_card_info[i].price <= Money){ |
| 66 | Searchlist.push(Graphic_card_info[i]); | 68 | Searchlist.push(Graphic_card_info[i]); |
| 67 | Searchcount++; | 69 | Searchcount++; | ... | ... |
-
Please register or login to post a comment