• 목록
  • 아래로
  • 위로

※ 법적 문제의 소지가 있어 구체적인 스크립트는 기재하지 않습니다.

 

 

CGV 홈페이지에서 새로운 날짜의 티켓이 오픈하였는지 여부를 크롤링하여

 

원하는 좌석을 예매하려는 분들이 많이 계시는 것으로 알고 있습니다.

 

구글링해보면 CGV 홈페이지가 개편된 이후에 Python Requests로 크롤링하는 것이 막혔다는 취지의 글들이 있습니다.

 

하지만 여전히 Selenium을 사용하지 않고도 가능합니다!!

 

제 사견으로는 Requests로 크롤링이 가능한 웹페이지를 Selenium으로 크롤링한다면,

 

빈대를 잡으려 초가삼간을 태우는 격으로서 사실상 크롤링에 실패한 것으로 봅니다.

 

 

크롤링 방법에 대한 요지를 말씀드리면 다음과 같습니다.

 

(URL 생략) GetScheduleSearchKey에 POST 전송을 할 때 headers를 적절히 넣는 것이 핵심입니다.

 

특히 cookies 관련하여 ASP.NET_SessionId를 다른 URL에서 받아오던지 해서 잘 넣어줘야 합니다.

 

URL_PREV_COMMON은 꼼꼼하게 보지 않으므로 적당히 넣어주면 됩니다.

 

참고로 최근에 홈페이지가 개편된 사이트 중 상당수는 cookies를 조작하면 여전히 Requests로 크롤링이 가능합니다.

(ex. 교보문고)

 

 

그리고 기술적이라기보다는 실무적인 문제에 가깝지만 CGV 측에서 간혹 날짜를 건너뛰어서 티켓을 오픈하는 경우가 있습니다.

 

예컨대 2023. 8. 7. 시점에서 2023. 8. 14.부터 2023. 8. 21.까지의 티켓 및 2023. 8. 28.일 자의 티켓이 오픈되는 경우가 있습니다.

 

단순히 예매 가능한 마지막 날짜만 크롤링하여 받아오면 2023. 8. 23.일 자의 영화를 예매하려고 할 때 낭패를 볼 수 있으니 참고하세요 ^-^

 

작성자
이니스프리 119 Lv. (1%) 2603010/115200000EXP

Make StudyForUs Great Again!

 

CSVpuymXAAAVVpd.jpg

댓글 0

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [1차 해결 및 추가] 서버 접속 불가 문제 안내 12 마스터 마스터 24.06.20.15:22 579
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 마스터 24.02.11.17:21 2566
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 6265
356 [Python] COS Pro 1급 5-1 풀이 이니스프리 이니스프리 20.02.15.16:01 622
355 [Python] COS Pro 1급 4-10 풀이 이니스프리 이니스프리 20.02.15.12:17 185
354 [Python] 소수점 자리수의 출력 - round() vs format() 1 이니스프리 이니스프리 20.02.15.11:53 31823
353 [Python] COS Pro 1급 예제 2-6 풀이 이니스프리 이니스프리 20.02.14.15:03 176
352 [Python] 다중 list comprehension 이니스프리 이니스프리 20.02.14.13:08 184
351 [Python] 10진수를 n진수로 변환하기 이니스프리 이니스프리 20.02.14.01:23 619
350 [Python] 스도쿠의 정오를 확인하는 함수 이니스프리 이니스프리 20.02.13.15:28 129
349 [Python] 최소공배수 구하기 이니스프리 이니스프리 20.02.12.00:11 337
348 [Python] 문자열에서 숫자만 뽑아서 정수로 반환하는 함수 이니스프리 이니스프리 20.02.12.00:01 145
347 [Python] 2020년 5급 신임관리자 교육과정에 파이썬 도입! image 이니스프리 이니스프리 20.02.11.23:48 136
346 [Python] 회문(Palindrome) 여부를 확인하는 함수 이니스프리 이니스프리 20.02.11.23:32 244
345 [Python] 수를 뒤집는 두 가지 방법 3 이니스프리 이니스프리 20.02.11.22:24 156
344 [Python] 에라토스테네스의 체 이니스프리 이니스프리 20.02.10.23:33 256
343 [Python] 이차원 리스트에서의 다중조건 정렬 이니스프리 이니스프리 20.02.08.23:00 1311
342 [Requests] 한 번의 POST 전송으로 여러 개의 파일을 업로드하는 방법 이니스프리 이니스프리 20.02.06.21:23 962
341 [Python] 지난 일요일 날짜 구하기 이니스프리 이니스프리 20.02.04.20:33 1017
340 [파이썬] 딕셔너리의 키/값으로 정렬하기 이니스프리 이니스프리 20.02.02.23:25 196
339 [IPVanish] 809 에러 해결방법 이니스프리 이니스프리 20.02.02.17:10 232
338 Matrix DAC 발열 문제 이니스프리 이니스프리 20.01.31.12:34 175
337 JLPT 성적표 및 합격증 수령 주소 변경 이니스프리 이니스프리 20.01.29.21:51 169