Showing
1 changed file
with
13 additions
and
5 deletions
| ... | @@ -150,6 +150,7 @@ public class CGVExample { | ... | @@ -150,6 +150,7 @@ public class CGVExample { |
| 150 | Iterator<Element> GoldenEgg = elements1.select("span.percent").iterator(); | 150 | Iterator<Element> GoldenEgg = elements1.select("span.percent").iterator(); |
| 151 | Iterator<Element> link = elements1.select("a.link-reservation").iterator(); | 151 | Iterator<Element> link = elements1.select("a.link-reservation").iterator(); |
| 152 | 152 | ||
| 153 | + //영화 제목, 순위, 예매율, 영화 코드, 골든에그 지수를 가져와 CGVMovieInfo 객체 생성자에 파라미터로 넘겨주고, 인스턴스를 받아옴. | ||
| 153 | while(title.hasNext()){ | 154 | while(title.hasNext()){ |
| 154 | String newTitle = title.next().text(); | 155 | String newTitle = title.next().text(); |
| 155 | int newRank = Integer.parseInt(rank.next().text().replace("No.","")); | 156 | int newRank = Integer.parseInt(rank.next().text().replace("No.","")); |
| ... | @@ -164,8 +165,8 @@ public class CGVExample { | ... | @@ -164,8 +165,8 @@ public class CGVExample { |
| 164 | } | 165 | } |
| 165 | 166 | ||
| 166 | for (CGVMovieInfo elem : Movies) { | 167 | for (CGVMovieInfo elem : Movies) { |
| 167 | - elem.printMovieInfo(); | 168 | + //elem.printMovieInfo(); |
| 168 | - //System.out.println(elem.getRank() + " : " + elem.getTitle()); | 169 | + System.out.println(elem.getRank() + " : " + elem.getTitle()); |
| 169 | } | 170 | } |
| 170 | 171 | ||
| 171 | //영화 이름(Integer 선택지), 영화관 지역 코드, 영화관 이름, 관람 일자 입력 시, (시간 선택 가능한) 예매 사이트로 이동. | 172 | //영화 이름(Integer 선택지), 영화관 지역 코드, 영화관 이름, 관람 일자 입력 시, (시간 선택 가능한) 예매 사이트로 이동. |
| ... | @@ -185,10 +186,12 @@ public class CGVExample { | ... | @@ -185,10 +186,12 @@ public class CGVExample { |
| 185 | String otherFormat = String.format("THEATER_CD=%s&PLAY_YMD=%s", theaterCode, date); | 186 | String otherFormat = String.format("THEATER_CD=%s&PLAY_YMD=%s", theaterCode, date); |
| 186 | url_ticketing += ("?" + otherFormat); | 187 | url_ticketing += ("?" + otherFormat); |
| 187 | 188 | ||
| 189 | + //예매 가능한 영화 리스트를 얻기 위해 빠른 예매 사이트로 이동. | ||
| 188 | WebDriver driver_ticketing = new ChromeDriver(); | 190 | WebDriver driver_ticketing = new ChromeDriver(); |
| 189 | driver_ticketing.get(url_ticketing); | 191 | driver_ticketing.get(url_ticketing); |
| 190 | try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();} | 192 | try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();} |
| 191 | 193 | ||
| 194 | + //Frame 전환 | ||
| 192 | WebElement selecting_area = driver_ticketing.switchTo().frame("ticket_iframe").findElement(By.className("theater-area-list")); | 195 | WebElement selecting_area = driver_ticketing.switchTo().frame("ticket_iframe").findElement(By.className("theater-area-list")); |
| 193 | List<WebElement> selected_areas_list = selecting_area.findElements(By.cssSelector("ul > li > a > span.name")); | 196 | List<WebElement> selected_areas_list = selecting_area.findElements(By.cssSelector("ul > li > a > span.name")); |
| 194 | 197 | ||
| ... | @@ -212,17 +215,22 @@ public class CGVExample { | ... | @@ -212,17 +215,22 @@ public class CGVExample { |
| 212 | //선택한 영화관에서, 선택한 일자에 상영하는 영화 목록 들고오기 | 215 | //선택한 영화관에서, 선택한 일자에 상영하는 영화 목록 들고오기 |
| 213 | WebElement selecting_movies = driver_ticketing.findElement(By.className("movie-select")); | 216 | WebElement selecting_movies = driver_ticketing.findElement(By.className("movie-select")); |
| 214 | List<WebElement> selected_movies_list = selecting_movies.findElements(By.cssSelector("#movie_list > ul > li")); | 217 | List<WebElement> selected_movies_list = selecting_movies.findElements(By.cssSelector("#movie_list > ul > li")); |
| 218 | + LinkedHashMap<String, String> accessible_movies = new LinkedHashMap<>(); | ||
| 215 | 219 | ||
| 216 | //선택불가를 제외한 영화 제목 출력 | 220 | //선택불가를 제외한 영화 제목 출력 |
| 217 | for(WebElement movie_element : selected_movies_list){ | 221 | for(WebElement movie_element : selected_movies_list){ |
| 218 | String movie_enabled = movie_element.getAttribute("class"); | 222 | String movie_enabled = movie_element.getAttribute("class"); |
| 219 | if(movie_enabled.endsWith("dimmed")) | 223 | if(movie_enabled.endsWith("dimmed")) |
| 220 | break; | 224 | break; |
| 221 | - else | 225 | + else{ |
| 222 | - System.out.println(movie_element.findElement(By.cssSelector("span.text")).getText()); | 226 | + String title = movie_element.findElement(By.cssSelector("span.text")).getText(); |
| 227 | + String code = movie_element.getAttribute("movie_cd_group"); | ||
| 228 | + accessible_movies.put(title, code); | ||
| 229 | + System.out.println(title + " : " + code); | ||
| 230 | + } | ||
| 223 | } | 231 | } |
| 224 | 232 | ||
| 225 | - try { | 233 | + try{ |
| 226 | driver_ticketing.close(); //드라이버 연결 해제 | 234 | driver_ticketing.close(); //드라이버 연결 해제 |
| 227 | driver_ticketing.quit(); //프로세스 종료 | 235 | driver_ticketing.quit(); //프로세스 종료 |
| 228 | } catch (Exception e) { | 236 | } catch (Exception e) { | ... | ... |
-
Please register or login to post a comment