반응형
파이썬에서 URL 정보를 받아 예약 가능한 사이트만 조회하는 정보를 만들고자 합니다.
아래 순서로 데이터를 가져옵니다.
- 사이트 접속
- 데이터 프레임 변환
- 예약 가능한 사이트만 가져오기(데이터프레임 값 추출)
- 불필요한 열 삭제(데이터 프레임 열 삭제)
캠핑장 예약 정보 조회 순서
1. 사이트 접속
2. 데이터 프레임으로 변환
사용할 데이터 프레임은 두 개가 검색되는데 2번째의 프레임을 사용합니다.
3. 예약 가능한 사이트 추출
예약하기가 예약 가능한 사이트는 문자가 "예약하기"입니다.
4. 불필요한 열인 "규모"를 삭제
사이트의 정보를 미리 알고 있으므로 "규모" 열을 삭제합니다.
소스 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
'''
pip install urllib3
pip install pandas
'''
import requests
import urllib3
import pandas as pd
#--------------------------------------------------------------------
def get_datataframe( initYear,initMonth,initDay,delNotBooking=True):
urllib3.disable_warnings() # HTTPS 연결시 TLS 1.0 사용
url = 'https://www.sj.go.kr/gumsu/page.do?mnu_uid=1850&csr_class=0&step=list&cs_uid=0'
url += "&initYear=" +initYear
url += "&initMonth=" +initMonth
url += "&initDay=" +initDay
print(url)
# 웹페이지를 읽어 데이터 프레임으로 변환
dfs = pd.read_html(url,encoding='utf-8')
# 두번째 프레임(0부터시작)이 예약정보
df2= dfs[1]
print(df2)
#예약하기가 아니면 삭제
if delNotBooking:
condition = (df2.예약하기 == '예약하기')
df2 = df2.loc[condition]
# 불필요한 세번째 열(0 부터 시작) '규모(m2)' 삭제
df2 = df2.drop(df2.columns[2],axis=1)
print(df2)
return df2
#--------------------------------------------------------------------
if __name__ == '__main__':
get_datataframe('2021','6','03')
system("pause")
|
cs |
결과
위의 내용으로 보았을 때 73개 중 71개의 사이트가 예약 가능한 것으로 조회가 됩니다.
반응형
'파이썬 > 파이썬' 카테고리의 다른 글
[ 파이썬 ] 계속하려면 아무 키나 누르십시오 . . . (0) | 2022.01.05 |
---|---|
[ 파이썬 ] 특정 시간마다 함수 호출 및 종료 (0) | 2021.12.25 |
[ 파이썬 ] 텔레그램봇 만들기 (0) | 2021.12.24 |
[ 파이썬 ] 시군구 geoJson파일 분할 하기 (0) | 2021.12.23 |
[ 파이썬 ] ini파일 읽고 쓰기 (0) | 2021.12.23 |
댓글