크롤링&스크래핑
Crawling STEP 2 - 다음 영화페이지 크롤링
IT의 큰손
2023. 5. 26. 10:41
728x90
★ 다음 영화 페이지
HOME
Daum영화에서 자세한 내용을 확인하세요!
movie.daum.net
- 영화 박스오피스 순위 -> 크롤링
- 개발자 모드 F12를 이용하여 태그 분석
★ 소스
package com.test.crawling;
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class Ex03 {
public static void main(String[] args) {
try {
//가져올 URL
String url = "https://movie.daum.net/ranking/boxoffice/weekly";
//URL을 연결
Document doc = Jsoup.connect(url).get();
//System.out.println(doc.select(".list_movieranking").size());
//자식 태그 찾기
//영화 목록
Elements list = doc.select(".list_movieranking li");
System.out.println("영화 목록 : " + list.size() + "편");
//데이터 가져오기
for (Element movie :list) {
//영화 제목
String title = movie.select(".link_txt").text();
System.out.println(title);
//개봉 날짜
String date = movie.select(".txt_num").text();
System.out.println(date);
//관객수
String num = movie.select(".info_txt:nth-child(2)").text();
System.out.println(num.replace("관객수", ""));
//설명
String story = movie.select(".link_story").text();
System.out.println(story);
//이미지
String poster = movie.select(".img_thumb").attr("src");
System.out.println(poster);
System.out.println();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
■ 실행 결과
■ 이미지 다운로드 ->
//이미지 다운로드
URL posterUrl = new URL(poster);
BufferedImage image = ImageIO.read(posterUrl);
File file = new File("poster\\" + title + ".png");
ImageIO.write(image, "png", file);
- 실행 결과
728x90