신기성

rtfw url 구성 및 아이디 추출

1 var readline=require('readline');//입력받기 위한 모듈 1 var readline=require('readline');//입력받기 위한 모듈
2 var r=readline.createInterface({input:process.stdin,output:process.stdout});//키보드 입출력 정의 2 var r=readline.createInterface({input:process.stdin,output:process.stdout});//키보드 입출력 정의
3 -var url="http://www.rankedftw.com/search/?name=";//rtfw에서 기본 검색 url 3 +var rtfw="http://www.rankedftw.com/search/?name=";//rtfw에서 기본 검색 url
4 +//
5 +var cheerio=require('cheerio');//cheerio모듈 사용
6 +var request=require('request');//request모듈 사용
7 +var fs=require('fs');//파일시스템 사용
8 +//
9 +var client=require('cheerio-httpcli');
10 +var param={};
11 +var urltype=require('url');
12 +//
4 r.question("분석을 원하는 아이디를 입력하세요 : ",function(answer){//question메소드에서 callback함수 생성 13 r.question("분석을 원하는 아이디를 입력하세요 : ",function(answer){//question메소드에서 callback함수 생성
5 console.log("입력완료! 분석중...");//callback함수란 이벤트가 왔을 때 실행되는 함수이다. answer에 검색을 원하는 아이디가 담겨있다. 14 console.log("입력완료! 분석중...");//callback함수란 이벤트가 왔을 때 실행되는 함수이다. answer에 검색을 원하는 아이디가 담겨있다.
6 - url=url+answer; 15 + rtfw=rtfw+answer;//검색 url 구성
7 - console.log(url); 16 + console.log(rtfw);//검색 url 확인
8 - r.close()//반드시 close를 해줘야 한다.사용이 다 끝난 후에. 17 + //
18 + //client.fetch(rtfw,param,function(err,$,res){
19 + //if(err){console.log(err);return;}
20 + // var src=$(this).attr('src');
21 + // src=urltype.resolve(url,src);
22 + //var filename=urltype.parse(src).pathname;
23 + // fname=savedir+'/'+fname.replace(/[^a-zA-Z0-9\.]+/g, '_');
24 + // request(src).pipe(fs.createWriteStream(fname));
25 + //});
26 + //
27 +// var parsing_html=fs.readFile(rtfw,'utf8',(err,data)=>{//html reading fs 사용
28 +//err? console.log(err) : console.log('okay cheerio!');//에러나면 에러출력, 이외엔 okay 메시지
29 +request(rtfw,(error,response,body)=>{
30 + if(error){throw error};
31 + let $ = cheerio.load(body);//rtfw가 body이다. $로 jquery방식으로 html탐색
32 + try{
33 + let username='';
34 + let usernumber='';
35 + $('a').find('li').each(function(index,elem){
36 + username=$(this).find('.name').text().trim();
37 + if(username===answer){
38 + console.log(`${username}`);
39 + }
40 +
41 +
42 + });
43 + }catch(error){
44 + console.error(error);
45 + }
9 }); 46 });
47 +
48 +// });//parsing_html 끝
49 + //
50 +
51 + r.close()//반드시 close를 해줘야 한다.사용이 다 끝난 후에.
52 +});//r.question 끝
......