신기성

1페이지 사이트로 변경

var readline=require('readline');//입력받기 위한 모듈
var r=readline.createInterface({input:process.stdin,output:process.stdout});//키보드 입출력 정의
var rtfw1="http://www.rankedftw.com/search/?name=";//rtfw에서 기본 검색 url
......
//http연동
//Site
var http = require('http');
var fs = require('fs');
var jsdom = require('jsdom');
//var $ = require('jquery');
var path=require('path');
//Site end
var express=require('express');
var app=express();
var router=require('./router/main')(app);
var bodyParser=require('body-parser');
var querystring=require('querystring');
app.use(bodyParser.urlencoded({extended: false}));
app.use(bodyParser.json());
//Site
app.use(express.static('public'));
app.use('/node_modules', express.static(path.join(__dirname,'/node_modules')));
app.get('/', function(req,res){
fs.readFile('index.ejs',function(err,data){
res.writeHead(200,{'Content-Type':'text/html'});
res.end(data);
});
});
app.get('/build/create', function(req,res,next){
fs.readFile('index.ejs',function(err,data){
res.writeHead(200,{'Content-Type':'text/html'});
res.end(data);
});
});
app.get('/imgs',function(req,res){
fs.readFile('logoIMG.jpg',function(err,data){
res.writeHead(200,{'Content-Type':'text/html'});
res.end(data);
});
});
//Site end
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
......
/*
var fs = require('fs');//파일 시스템
var readline=require('readline')//readline 모듈
var file = 'target.txt';//파일은 타겟.텍스트이다.
......@@ -18,3 +19,4 @@ fs.open(file, 'r+', function(err,fd){//파일을 읽쓰 모드로 열고 없으
})
})
})
*/
......
[object Object]
\ No newline at end of file

136 KB

This diff is collapsed. Click to expand it.
module.exports = function(app,fs)
{
app.get('/',function(req,res){
var test='test';
res.render('example.ejs',{data:test});
var test='333333333333';
res.render('index',{length: test});
});
app.get('/build/create',function(req,res,next){
var readline=require('readline');//입력받기 위한 모듈
var r=readline.createInterface({input:process.stdin,output:process.stdout});//키보드 입출력 정의
......@@ -48,8 +54,13 @@ res.render('example.ejs',{data:test});
var enemyrace;//상대 종족
var recommend;//추천빌드(운영/타이밍/올인)
//
//var answer=req.getParameter("name");
var answer=req.query.name;
answer=answer.toString();
console.log("query"+answer);
r.question("분석을 원하는 아이디를 입력하세요 : ",function(answer){//question메소드에서 callback함수 생성
// r.question("분석을 원하는 아이디를 입력하세요 : ",function(answer){//question메소드에서 callback함수 생성
//question은 에러 제어 만들면 안된다.
console.log("r.question processing");//callback함수란 이벤트가 왔을 때 실행되는 함수이다. answer에 검색을 원하는 아이디가 담겨있다.
rtfw1=rtfw1+answer;//검색 url 구성
......@@ -58,6 +69,7 @@ res.render('example.ejs',{data:test});
request(rtfw1,(error,response,body)=>{//rtfw url 불러오기 request 1
if(error){throw error};//에러처리
console.log("request 1 processing");
console.log(body);
let $ = cheerio.load(body);//rtfw가 body이다. $로 jquery방식으로 html탐색
$('ul').find('a').each(function(index,elem){//ul 태그 아래 a태그를 찾는다.
username=$(this).find('.name').text().trim();//name클래스를 찾아 공백빼고 텍스트화
......@@ -208,7 +220,7 @@ res.render('example.ejs',{data:test});
console.log("상대의 주 종족은 '"+primary_race+"'입니다.");
console.log("상대의 이번 시즌 전체 승률은 '"+win_rate+"'입니다.");
//
res.render('index',{length: momentum});
//build recommend command
//
......@@ -226,8 +238,8 @@ res.render('example.ejs',{data:test});
console.log('r.question done');
//console.log(terran_level);
r.close()//반드시 close를 해줘야 한다.사용이 다 끝난 후에.
});//r.question 끝
// r.close()//반드시 close를 해줘야 한다.사용이 다 끝난 후에.
// });//r.question 끝
......
<!DOCTYPE html>
<html lang="ko-kr">
<head>
<meta charset="utf-8">
<link href="//netdna.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet" media="screen">
<link href="/static/core/style.css" rel="stylesheet" media="screen">
<script type="text/javascript" src="node_modules/jquery/dist/jquery.js"></script>
<script type="text/javascript">
$().ready(function(){
alert("StarCraft2 Build Recommendation Project");
});
</script>
<script async="" src="//www.google-analytics.com/analytics.js"></script>
<script type="text/javascript" async="" src="//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js"></script>
<title>StarCraft 2 Build Recommendation Project</title>
<body>
<p stype="fond-family:verdana;">StarCraft 2 Build Recommendation Project</p>
<br>
<br>
<img src="/imgs" alt="StarCraft2 LOGO image">
<div class="col-md-3">
<form action="/build/create" id="searchform" action method="get">
<div id="div_id_name" class="form-group">
<label for="id_name" class="control-label ">
상대 아이디
</label>
<div class="controls">
<input class="textinput textInput form-control" id="id_name" maxlength="20" name="name" type="text">
</div>
</div>
<input value="빌드 추천!" type="submit"/>
</form>
<%= length%>
<a class="btn btn-primary" href="/build/create/">빌드</a>
<br>
<br>
<a href="https://starcraft2.com/ko-kr/game">Official Site</a>
</body>
</html>