파이썬 프로젝트 및 응용/옥션 최저가 항공티켓으로 제주도 여행가기

(프로젝트) 옥션 최저가 항공티켓으로 제주도 여행가기 - 1. 원하는 날짜 선택하기

파기차차 2023. 2. 23. 09:41
728x90
반응형
SMALL
728x90
반응형

ㅁ 개요

 

O 프로그램 소개

 

 

 - 이번 글은 이전글((프로젝트) 옥션 최저가 항공티켓으로 제주도 여행가기 - 0. 소개)에 이은 2번째 글로 항공 티켓 정보를 수집하기 위하여 원하는 날짜를 선택해야 하므로, 우리가 원하는 날짜인 매주 금요일에 대한 날짜 정보를 얻어오는 방법에 대하여 알아 보겠습니다.

 

 

O 완성된 프로그램 실행 화면

 

 

 - 최종 완성된 프로그램의 결과화면은 아래와 같습니다.

 

1.프로그램을 실행하면 2023년 1월 중 금요일에 해당하는 날짜인 아래 4개 날짜를 리스트로 받아오는 것을 볼 수 있습니다.

['2023-01-06', '2023-01-13', '2023-01-20', '2023-01-27']

 

 

 

 

 


 
 

O 주요 내용

 

1. 소스코드를 먼저 살펴 보겠습니다.

 

먼저 날짜 관련 모듈과 판다스 모듈을 임포트 해줍니다.

 

그리고 데이터프레임형태로 날짜 데이터를 뽑아서

dt_index = pd.date_range(start='20230101', end='20230131')


이 데이터프레임을 리스트로 바꿔 줍니다.
dt_list = dt_index.strftime("%Y.%m.%d").tolist() 

 

금요일에 해당하는 날짜만 뽑을 것이기 때문에 이것을 담아둘 리스트 변수(fridays)를 만들어 둡니다.

 

for문으로 1월 날짜를 하나씩 돌면서 '금요일'인지를 찾습니다. 날짜에 해당하는 요일을 찾아주는 함수가 weekday()입니다.

i.weekday()로 사용하면 해당 요일을 숫자로 표시해 줍니다.

 

0   1   2   3  4   5   6

월 화 수 목 토 일

 

if문으로 weekday()가 4이면 금요일 이므로 이 값을 미리 만들어둔 fridays[]리스트에 append로 담아 둡니다.

 

for문이 완료되면 fridays[]리스트에는 1월 중 금요일에 해당하는 날짜만 들어가게 됩니다.

(자세한 내용은 아래 소스의 코멘트를 참조해 주세요.)

 

 

 

 

 2. 위의 소스코드를 실행한 모습입니다.

1월의 모든 날짜 정보가 'dt_list'에 들어가 있는 것을 알 수 있습니다.

 

 

 3. 디버깅(print문 등)을 좀 제거하여 보기좋게 한다음 프로그램을 실행하면, 최종적으로 우리가 원하는 매주 금요일의 날짜 데이터를 얻어온 것을 볼 수 있습니다.

 

 

 

다음 글에서 우리는 파이썬의 셀레니움과 크롤링 기법을 이용하여 항공 티켓정보를 가져와서 엑셀파일로 저장하는 방법에 대하여 알아 보겠습니다.

 


 

ㅁ 정리

 

O 우리가 배운 내용

 
 - 오늘은 항공 티켓 정보를 수집하기 위하여 우리가 원하는 날짜 즉,  매주 금요일에 대한 날짜 정보를 얻어오는 방법에 대하여 알아 보았습니다.
 
 
 
 
 - 오늘 우리가 배운 내용을 간략히 정리해 보면 아래와 같습니다.
 
 
 > 1.날짜 기간을 데이터프레임으로 설정
dt_index = pd.date_range(start='20230101', end='20230131')
 
 > 2.데이터프레임을 리스트로 변환
dt_list = dt_index.strftime("%Y.%m.%d").tolist()
 
 > 3.리스트 속 날짜를 weekday()함수를 이용하여 금요일여부를 확인
if i.weekday() == 4: # 금요일이면 if문 실행

 

 

오늘은 여기까지이며, 댓글하트는 제가 이글을 지속할 수 있게 해주는 힘이 됩니다.

위의 내용이 유익하셨다면, 댓글과 하트 부탁드립니다.

 

 

 

 

감사합니다.

 

 

※ 추가적인 정보는 아래 유튜브 영상에서 해당 내용을 더욱 자세히 보실 수 있습니다.

 

728x90
반응형
LIST