@@ -60,12 +60,7 @@ def __init__(self, *args, **kwargs):
60
60
self ._status = None
61
61
62
62
if self .debug :
63
- # https://stackoverflow.com/a/16630836
64
- try :
65
- import http .client as http_client
66
- except ImportError :
67
- # Python 2
68
- import httplib as http_client
63
+ import http .client as http_client
69
64
http_client .HTTPConnection .debuglevel = 1
70
65
71
66
# You must initialize logging,
@@ -152,19 +147,18 @@ def _api_status() -> dict:
152
147
available_slots = int (
153
148
next (
154
149
(
155
- available_re . search ( line ) .group ()
150
+ m .group ()
156
151
for line in lines
157
- if available_re .search (line )
152
+ if ( m := available_re .search (line ) )
158
153
), 0
159
154
)
160
155
)
161
156
162
157
waiting_re = re .compile (r'(?<=Slot available after: )[\d\-TZ:]{20}' )
163
158
waiting_slots = tuple (
164
- datetime .strptime (
165
- waiting_re .search (line ).group (), "%Y-%m-%dT%H:%M:%S%z"
166
- )
167
- for line in lines if waiting_re .search (line )
159
+ datetime .strptime (m .group (), "%Y-%m-%dT%H:%M:%S%z" )
160
+ for line in lines
161
+ if (m := waiting_re .search (line ))
168
162
)
169
163
170
164
current_idx = next (
@@ -248,7 +242,7 @@ def _construct_ql_query(self, userquery, responseformat, verbosity, date):
248
242
raw_query += ";"
249
243
250
244
if date :
251
- date = f'[date:"{ date . strftime ( " %Y-%m-%dT%H:%M:%SZ" ) } "]'
245
+ date = f'[date:"{ date : %Y-%m-%dT%H:%M:%SZ} "]'
252
246
253
247
if responseformat == "geojson" :
254
248
template = self ._GEOJSON_QUERY_TEMPLATE
@@ -281,19 +275,19 @@ def _get_from_overpass(self, query):
281
275
282
276
self ._status = r .status_code
283
277
284
- if self ._status != 200 :
285
- if self ._status == 400 :
286
- raise OverpassSyntaxError (query )
287
- elif self ._status == 429 :
288
- raise MultipleRequestsError ()
289
- elif self ._status == 504 :
290
- raise ServerLoadError (self ._timeout )
291
- raise UnknownOverpassError (
292
- "The request returned status code {code}" .format (code = self ._status )
293
- )
294
- else :
278
+ if self ._status == 200 :
295
279
r .encoding = "utf-8"
296
280
return r
281
+ elif self ._status == 400 :
282
+ raise OverpassSyntaxError (query )
283
+ elif self ._status == 429 :
284
+ raise MultipleRequestsError ()
285
+ elif self ._status == 504 :
286
+ raise ServerLoadError (self ._timeout )
287
+ else :
288
+ raise UnknownOverpassError (
289
+ f"The request returned status code { self ._status } "
290
+ )
297
291
298
292
def _as_geojson (self , elements ):
299
293
ids_already_seen = set ()
0 commit comments