Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # coding: utf-8
- import requests
- import datetime
- API_KEY = ''
- URL = 'https://api.nasa.gov/planetary/apod'
- START = datetime.date(2019, 1, 1)
- END = datetime.date.today()
- IMGS_FOLDER = 'imgs'
- ERROR_FILE = 'apod_errors.txt'
- def print_data(data: str, filename: str):
- with open(ERROR_FILE, 'a') as f:
- print(data, file=f)
- def write_file(img_url: str, filename: str):
- r = requests.get(img_url, stream=True)
- with open(filename, 'wb') as f:
- for chunk in r.iter_content(chunk_size=512*1024):
- f.write(chunk)
- delta = datetime.timedelta(days=1)
- date = START
- while date < END:
- date = date + delta
- d = date.strftime(r'%Y-%m-%d')
- img_url = f"{URL}?api_key={API_KEY}&date={d}"
- data = requests.get(img_url).json()
- if data['media_type'] == 'image':
- try:
- filename = data['hdurl'].split('/')[-1]
- write_file(data['hdurl'], '/'.join([IMGS_FOLDER, filename]))
- except KeyError as e:
- print_data(data, ERROR_FILE)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement