- 데이터 크롤링2024년 08월 09일
- chantleman
- 작성자
- 2024.08.09.:07
크롤링해도 되는지 확인하기 위해서
내가 원하는 사이트 url /robots.txt
(네이버: json 정보는 가져가도 됨)
(구글: search는 기본적으로 disallow지만, search아래 about, static, howsearchworks는 가져가도 됨)
이렇게 크롤링해도 되는 정보와 하면 안되는 정보들을 명시해줍니다.
필수는 아니고 권고사항정도
yes24
url 복사 후
public class JsoupUtil { public static String getHtml(String url) { Document doc= null; try { doc = Jsoup.connect(url).get(); return doc.html(); } catch (IOException e) { e.printStackTrace(); } return ""; } }
public class Step1Main { public static void main(String[] args) { Step1Main sm = new Step1Main(); sm.process(); } public void process() { String url = "https://www.yes24.com/Mall/Main/Book/001?CategoryNumber=001"; String html = JsoupUtil.getHtml(url); System.out.println(html); } }
url에 붙여넣기
소스 코드 출력된 것 확인
<main.html 파일 만들고, 그 파일에 소스 코드 넣기>
public class Step1Main { public static void main(String[] args) { Step1Main sm = new Step1Main(); sm.process(); } public void process() { String html=""; File main = new File("yes24/step1/main.html"); if(main.exists()) { try { html=Files.readString(Paths.get(main.toString())); } catch (IOException e) { e.printStackTrace(); } } else { String url = "https://www.yes24.com/Mall/Main/Book/001?CategoryNumber=001"; html = JsoupUtil.getHtml(url); try { Files.write(Paths.get(main.toString()),html.getBytes()); } catch (IOException e) { e.printStackTrace(); } } } }
step1폴더에 main.html 만들어진 것 확인
가정 살림 카테고리만 크롤링하기 위해
F12 - elements에서 가정 살림 부분 클래스(cate2d) 체크
위 코드(Step1Main)에 추가
String[] lines = html.split("\n"); for(String line: lines) { //cate2d if(line.contains("<li class=\"cate2d")) { System.out.println(line); } }
cate2d 클래스만 출력된 것 확인
728x90'자바' 카테고리의 다른 글
yes24 데이터 DB 넣기 (0) 2024.08.19 File (0) 2024.08.11 maven (0) 2024.08.09 톰캣 포트 변경하기 (0) 2024.08.07 스레드. 배치파일 (0) 2024.08.06 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)