본문 바로가기

분류 전체보기15

SRT&KTX 기차표 매크로 예매 - (11) KTX 승차권 예매 KTX의 마지막..! 기차표를 예매해보자 ktx 예매를 해보면, 꽤 많은 데이터를 전달하는 것을 확인할 수 있다. 스케쥴 조회했던 것과 마찬가지로 테스트해가며 하나씩 분석해보자.. 예매를 여러번 해보면서 찾은 결과 URL : https://www.letskorail.com/ebizprd/EbizPrdTicketPr12111_i1.do Method : POST Data Field selGoTrain : 기차 종류 (05 - 전체, 00 - KTX, 09 - ITX-청춘, 18 - ITX-마음, 02 - 무궁화, 03 - 통근열차) txtSeatAttCd2 : 좌석방향 (000 - 기본, 009 - 순방향석, 010 - 역방향석) txtSeatAttCd3 : 좌석위치 (000 - 기본, 011 - 1인석, .. 2024. 1. 16.
SRT&KTX 기차표 매크로 예매 - (10) KTX 승차권 조회 KTX 기차표를 조회해보자. POST 요청의 Payload를 보면 데이터가 엄...청나게 많다. 불필요한 데이터가 많을 것 같으니, 천천히 분석해보자. 결과는 다음과 같다. 승차권 조회를 여러번 해보면서 찾은 결과 URL : https://www.letskorail.com/ebizprd/EbizPrdTicketPr21111_i1.do Method : POST Data Field selGoTrain : 기차 종류 (05 - 전체, 00 - KTX, 09 - ITX-청춘, 18 - ITX-마음, 02 - 무궁화, 03 - 통근열차) txtPsgFlg_1 : 성인 수 txtPsgFlg_2 : 어린이 수(만6~12세) txtPsgFlg_8 : 아기 수(만6세 미만) txtPsgFlg_3 : 노인 수 txtPsg.. 2024. 1. 15.
SRT&KTX 기차표 매크로 예매 - (9) KTX 역 리스트 조회 SRT에서 역 조회를 자동으로 해온것과 비슷하게, KTX역도 자동으로 불러오게 만들자. 기차표 조회창에서 역 변경을 누르면 기차역 리스트 팝업을 확인할 수 있다. 여기서 분홍표시된 역들이 KTX 정차역이다. 우리는 KTX가 아닌 일반 열차에는 관심이 없으므로, 이 역들만 뽑아내자. 소스코드를 보면 예쁘게도 KTX 정차역이 분리되어 나온다. class가 bg03이거나 title이 'KTX 정차역'인 리스트를 뽑으면 된다. title이 'KTX 정차역'인 리스트를 뽑으려 했는데.. 청량리역이 안잡혀서 클래스로 잡는다...(개발 상태가..) def fetch_stations(self): result = dict() try: res = self.session.get("https://www.letskorail.c.. 2024. 1. 15.
SRT&KTX 기차표 매크로 예매 - (8) KTX 로그인 SRT 개발이 완료됐으니, KTX 예매 기능을 구현하자. SRT 로그인 기능 구현했던 글을 참조하여 빠르게 개발해보자. Session 받기 KTX 세션은 https://www.letskorail.com/ 에서 받는다. - callback 함수들은 ui와 연동하면서 필요하므로, 일단 주석처리하자. class KTX: def __init__(self): #, error_callback, try_callback): # self.error_callback = error_callback # self.try_callback = try_callback self.session = requests.Session() self.session.get("https://www.letskorail.com/") 로그인하기 KTX 로.. 2024. 1. 15.