오래 못 할 짓 하지 않기

[ 혼자하는 웹 프로젝트 ] 3. 크롤링 하기 본문

혼자하기/웹 프로젝트 1) 뉴스

[ 혼자하는 웹 프로젝트 ] 3. 크롤링 하기

쫑알bot 2023. 8. 22. 18:47
728x90
크롤링

난 여태껏 크롤링이 진짜 엄청 어려운 거라고 생각했는데

막상 해보니 아주 간단함. 코드가 아닌 원리만 이해하는 방식으로는 레고 전시회라고 생각해보자.



' 레고 전시회에서 A위치에 있는 작품에서 빨간 블록 하나만 빼온다 ' 고 이해하면 편할 것 같다.

현재 내가 이해한 바로는
크롤링은 해당 URL(주소)에서 HTML기반으로 데이터를 가져오는 걸 뜻한다. 

URL = 위치 A   / 데이터 = 빨간 블록

 

우선 newsService에서 데이터를 다루어야 하니까 content를 가져오는 class를 하나 만들었다.

그리고 jsoup을 디펜던시에 추가하고, import를 했다.

 

필요한 재료

  • 어느 사이트 URL을 사용할지.
  •  

 

 

public void addContToDB(News news) throws  Exception{
    String URL = "https://www.yna.co.kr/economy/all?site=navi_economy_depth02";
    Document doc = Jsoup.connect(URL).get();


    System.out.println(doc.text());

}

 

어려워 보이는데 해보면 진짜 별 거 없다. 하나하나 설명 들어감

 

1. 첫 번째 String URL 은 계속 주소 치기가 귀찮아서 저렇게 하는 것 같음.

 

2. 그 아래 Document class는 Jsoup 에 있는 기능임 . 

문법 해석하자면 Document (객체이름) = Jsoup.connect(연결할 주소).get(); << 우변은 연결할 주소에서 정보들을 가져온다는 뜻.

 

3. 그 아래에는 이제 (객체이름)으로 가져온 정보들을 내 입맛에 맞게 가공하면 됨

 

 

 

다음 목표 : 출력하기

 

이후)

 

목표 : 10개씩(=내가 원하는 개수만큼) 가져오기 + DB에 넣기

 

  그 다음 )  :  가져온 거 AI한테 요약시키고 그걸 또 DB에 넣고 가져오기