Post

네이버 뉴스 크롤링


package Ex;


import java.io.IOException;

import org.jsoup.Connection;

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.select.Elements;

import org.jsoup.nodes.Element;


public class ExR {

// static String BASE_URL_F = "URL="; // 페이지 나오기 전 "="까지 복사해서 붙여넣음

// static String BASE_URL_B = "&refresh_star=0"; // "=" 뒤에 숫자를 제외한 나머지 부분을 붙여넣음

// static int BASE_URL_PAGE = 1; // 페이지를 변경하기 위한 변수

// static String COMPLETE_URL = BASE_URL_F + BASE_URL_PAGE + BASE_URL_B; // 완성된 URL 주소


static String BASE_URL_F = "https://search.naver.com/search.naver?where=nexearch&sm=tab_htk.nws&ie=utf8&query=%EC%84%9C%ED%95%B4+%EA%B5%B0+%ED%86%B5%EC%8B%A0%EC%84%A0+%EB%B3%B5%EC%9B%90\r\n";

static String BASE_URL_B = "&refresh_star=0"; // "=" 뒤에 숫자를 제외한 나머지 부분을 붙여넣음

static int BASE_URL_PAGE = 1; // 페이지를 변경하기 위한 변수

static String COMPLETE_URL = BASE_URL_F + BASE_URL_PAGE + BASE_URL_B; // 완성된 URL 주소



public static void main(String[] args) throws IOException

{

// 뉴스 URL

Document doc = Jsoup.connect("http://news.naver.com/main/hotissue/read.nhn?mid=hot&sid1=100&cid=1049580&iid=36776687&oid=001&aid=0009801535&ptype=052").get();

//System.out.println(doc); 

// 개발자도구 F12를 눌러서 본문을 찾는다. 만약 id라면 id=대신#, class= 라면 class대신.이다.

Elements body = doc.select("div#articleBodyContents");

System.out.println(body);

}

}


text 글 정제하기, 타이틀 가져오기


package Ex;


import java.io.IOException;

import org.jsoup.Connection;

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.select.Elements;

import org.jsoup.nodes.Element;


public class ExR {

// static String BASE_URL_F = "URL="; // 페이지 나오기 전 "="까지 복사해서 붙여넣음

// static String BASE_URL_B = "&refresh_star=0"; // "=" 뒤에 숫자를 제외한 나머지 부분을 붙여넣음

// static int BASE_URL_PAGE = 1; // 페이지를 변경하기 위한 변수

// static String COMPLETE_URL = BASE_URL_F + BASE_URL_PAGE + BASE_URL_B; // 완성된 URL 주소


static String BASE_URL_F = "https://search.naver.com/search.naver?where=nexearch&sm=tab_htk.nws&ie=utf8&query=%EC%84%9C%ED%95%B4+%EA%B5%B0+%ED%86%B5%EC%8B%A0%EC%84%A0+%EB%B3%B5%EC%9B%90\r\n";

static String BASE_URL_B = "&refresh_star=0"; // "=" 뒤에 숫자를 제외한 나머지 부분을 붙여넣음

static int BASE_URL_PAGE = 1; // 페이지를 변경하기 위한 변수

static String COMPLETE_URL = BASE_URL_F + BASE_URL_PAGE + BASE_URL_B; // 완성된 URL 주소



public static void main(String[] args) throws IOException

{

//URL 연결

Document doc = Jsoup.connect("http://news.naver.com/main/hotissue/read.nhn?mid=hot&sid1=100&cid=1049580&iid=36776687&oid=001&aid=0009801535&ptype=052").get();

// 제목

Elements title = doc.select("h3#articleTitle");

String strTitle = title.text();

System.out.println(strTitle);

// 본문

Elements body = doc.select("div#articleBodyContents");

String str = body.text(); // 텍스트만 가져온다

System.out.println(str);

}

}



Post

1. R설치

R이란? 오픈소스로 통계, 데이터 시각화를 위한 언어

다운로드 URL : https://www.r-project.org/


2. R스튜디오 설치

R스튜디오란? 운영체제 환경에 상관없이 보편적으로 활용할 수 있는 오픈소스에 기반한 R관련 툴.

다운로드 URL : https://www.rstudio.com/


한국어 설정을 위한 기본 설정

Tools - Global Option - Code - Saving

Default text encoding 에서 UTF-8 을 선택하고 OK


3. Java 설치

다운로드 URL : http://www.oracle.com/technetwork/java/index.html


JDK 설치된 후 파일 경로

C:\Program Files\Java\jdk1.9.0_111

C:\Program Files\Java\jre8

C:\Program Fies (x86)\Java\jre8


Java 환경 변수 설정

제어판 - 시스템 - 시스템속성 - 고급 - 환경변수

시스템 변수를 새로만들기 클릭


* 폴더가 실제 있는지 확인할 것

변수이름 : CLASSPATH

변수 값 :  %classpath%;.


변수이름 : JAVA_HOME

변수 값 : C:\Program Files\Java\jdk-9.0.1


변수이름 : path

변수 값 : C:\Program Files\Java\jdk-9.0.1\bin


환경변수 잘 적용되었는지 확인(cmd 창에서 아래와 같이 친다)

java -version

java

javac


3개의 명령어가 잘 동작한다면 환경변수 설정이 잘 된것.

안된다면 다시 환경변수를 설정할 것.


4. 이클립스 설치

다운로드 URL : https://www.eclipse.org/


설치 후 Project , Packege, Class 순으로 생성한다.

Class 안에다가 소스를 넣으면 된다.



5. JSOUP 설치

HTML 형식의 STRING을 넘겨주면 자바에서 사용할 수 있는 DOM 객체로 만들어주는 라이브러리

(JSON 비슷한듯?)

다운로드 URL : https://jsoup.org/


설치 후 Project에서 오른쪽클릭으로 Preperties - Java Build Path - Libraries 에서 Add External JARs...클릭

그리고 나서 방금 다운받은 jar 파일을 클릭하고 확인.

그러면 라이브러리라 프로젝트 솔루션 창에 추가되어있다.


JSPOUP를 사용하기 위해 IMPORT 추가한다.



import java.io.IOException;

import org.jsoup.Connection;

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.select.Elements;

import org.jsoup.nodes.Element;




▲ top