-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcrontab_synch.py
172 lines (162 loc) · 5.23 KB
/
crontab_synch.py
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
import requests
import json
import time
# API를 불러오는 함수
def get_seoul_realTime_data():
# 시작 시간 기록
start_time = time.time()
# API를 불러오기 위한 setting
KEY = 'my_api'
TYPE = 'json'
START_INDEX = 1
END_INDEX = 1 # END_INDEX는 그냥 1로 정의하면 될듯하다. 임의의 n값을 준다고 해도 달라질 건 없음
AREA_NM_list = [
"강남 MICE 관광특구",
"동대문 관광특구",
"명동 관광특구",
"이태원 관광특구",
"잠실 관광특구",
"종로·청계 관광특구",
"홍대 관광특구",
"경복궁",
"광화문·덕수궁",
"보신각",
"서울 암사동 유적",
"창덕궁·종묘",
"가산디지털단지역",
"강남역",
"건대입구역",
"고덕역",
"고속터미널역",
"교대역",
"구로디지털단지역",
"구로역",
"군자역",
"남구로역",
"대림역",
"동대문역",
"뚝섬역",
"미아사거리역",
"발산역",
"북한산우이역",
"사당역",
"삼각지역",
"서울대입구역",
"서울식물원·마곡나루역",
"서울역",
"선릉역",
"성신여대입구역",
"수유역",
"신논현역·논현역",
"신도림역",
"신림역",
"신촌·이대역",
"양재역",
"역삼역",
"연신내역",
"오목교역·목동운동장",
"왕십리역",
"용산역",
"이태원역",
"장지역",
"장한평역",
"천호역",
"총신대입구(이수)역",
"충정로역",
"합정역",
"혜화역",
"홍대입구역(2호선)",
"회기역",
"4·19 카페거리",
"가락시장",
"가로수길",
"광장(전통)시장",
"김포공항",
"낙산공원·이화마을",
"노량진",
"덕수궁길·정동길",
"방배역 먹자골목",
"북촌한옥마을",
"서촌",
"성수카페거리",
"수유리 먹자골목",
"쌍문동 맛집거리",
"압구정로데오거리",
"여의도",
"연남동",
"영등포 타임스퀘어",
"외대앞",
"용리단길",
"이태원 앤틱가구거리",
"인사동·익선동",
"창동 신경제 중심지",
"청담동 명품거리",
"청량리 제기동 일대 전통시장",
"해방촌·경리단길",
"DDP(동대문디자인플라자)",
"DMC(디지털미디어시티)",
"강서한강공원",
"고척돔",
"광나루한강공원",
"광화문광장",
"국립중앙박물관·용산가족공원",
"난지한강공원",
"남산공원",
"노들섬",
"뚝섬한강공원",
"망원한강공원",
"반포한강공원",
"북서울꿈의숲",
"불광천",
"서리풀공원·몽마르뜨공원",
"서울광장",
"서울대공원",
"서울숲공원",
"아차산",
"양화한강공원",
"어린이대공원",
"여의도한강공원",
"월드컵공원",
"응봉산",
"이촌한강공원",
"잠실종합운동장",
"잠실한강공원",
"잠원한강공원",
"청계산",
"청와대",
"북창동 먹자골목",
"남대문시장"
]
# for문 돌린다.
for AREA_NM in AREA_NM_list:
URL = f'http://openapi.seoul.go.kr:8088/{KEY}/{
TYPE}/citydata/{START_INDEX}/{END_INDEX}/{AREA_NM}'
response = None
json_ob = None
try:
# API 불러오기
response = requests.get(URL)
# 상태 코드 확인하기
if response.status_code == 200:
try:
# JSON으로 파싱하기
json_ob = response.json()
# json_ob = json.loads(response.text)
print(json_ob)
except json.JSONDecodeError as json_err:
# JSON 파싱 에러 발생 시 실행
print(f"JSON decode error: {json_err}")
else:
print("RESPONSE_STATUS_CODE ERROR")
except requests.exceptions.HTTPError as http_err: # HTTP 에러 발생 시 실행
print(f"HTTP error occurred: {http_err}")
except requests.exceptions.ConnectionError as conn_err: # 연결 에러 발생 시 실행
print(f"Connection error occurred: {conn_err}")
except requests.exceptions.Timeout as timeout_err: # 시간 초과 에러 발생 시 실행
print(f"Timeout error occurred: {timeout_err}")
except requests.exceptions.RequestException as req_err: # 기타 요청 에러 발생 시 실행
print(f"An error occurred: {req_err}")
# 종료 시간 기록 및 실행 시간 계산
end_time = time.time()
print(f"Total execution time: {end_time - start_time:.2f} seconds")
get_seoul_realTime_data()