Passed
Push — master ( 97f273...f03092 )
by Stefan
01:15
created

spaceweather.core._assert_file_exists()   A

Complexity

Conditions 2

Size

Total Lines 3
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 2
eloc 3
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
# Copyright (c) 2020--2022 Stefan Bender
2
#
3
# This module is part of pyspaceweather.
4
# pyspaceweather is free software: you can redistribute it or modify
5
# it under the terms of the GNU General Public License as published
6
# by the Free Software Foundation, version 2.
7
# See accompanying COPYING.GPLv2 file or http://www.gnu.org/licenses/gpl-2.0.html.
8
"""Python interface for space weather indices
9
10
General file handling functions for space weather data
11
"""
12
import errno
13
import os
14
15
import requests
16
17
18
def _assert_file_exists(f):
19
	if not os.path.exists(f):
20
		raise IOError(errno.ENOENT, os.strerror(errno.ENOENT), f)
21
22
23
def _dl_file(swpath, url):
24
	with requests.get(url, stream=True) as r:
25
		if r.status_code != requests.codes.ok:
26
			return
27
		with open(swpath, 'wb') as fd:
28
			for chunk in r.iter_content(chunk_size=1024):
29
				fd.write(chunk)
30