mirror of
https://github.com/TheAlgorithms/Python.git
synced 2025-03-20 05:29:48 +00:00
Added feature to web_programming/nasa_data.py
: Can download the APOD image to a specified location on disk. (#5551)
* Added a feature to download images. * Minor changes * Update nasa_data.py * : Co-authored-by: Christian Clauss <cclauss@me.com>
This commit is contained in:
parent
27f2465135
commit
b64fd56776
@ -1,27 +1,38 @@
|
|||||||
|
import shutil
|
||||||
|
|
||||||
import requests
|
import requests
|
||||||
|
|
||||||
|
|
||||||
def get_apod_data(api_key: str) -> dict:
|
def get_apod_data(api_key: str, download: bool = False, path: str = ".") -> dict:
|
||||||
"""
|
"""
|
||||||
Get the APOD(Astronomical Picture of the day) data
|
Get the APOD(Astronomical Picture of the day) data
|
||||||
Get the API Key from : https://api.nasa.gov/
|
Get your API Key from: https://api.nasa.gov/
|
||||||
"""
|
"""
|
||||||
url = "https://api.nasa.gov/planetary/apod/"
|
url = "https://api.nasa.gov/planetary/apod"
|
||||||
return requests.get(url, params={"api_key": api_key}).json()
|
return requests.get(url, params={"api_key": api_key}).json()
|
||||||
|
|
||||||
|
|
||||||
|
def save_apod(api_key: str, path: str = ".") -> dict:
|
||||||
|
apod_data = get_apod_data(api_key)
|
||||||
|
img_url = apod_data["url"]
|
||||||
|
img_name = img_url.split("/")[-1]
|
||||||
|
response = requests.get(img_url, stream=True)
|
||||||
|
|
||||||
|
with open(f"{path}/{img_name}", "wb+") as img_file:
|
||||||
|
shutil.copyfileobj(response.raw, img_file)
|
||||||
|
del response
|
||||||
|
return apod_data
|
||||||
|
|
||||||
|
|
||||||
def get_archive_data(query: str) -> dict:
|
def get_archive_data(query: str) -> dict:
|
||||||
"""
|
"""
|
||||||
Get the data of a particular query from NASA archives
|
Get the data of a particular query from NASA archives
|
||||||
"""
|
"""
|
||||||
endpoint = "https://images-api.nasa.gov/search"
|
url = "https://images-api.nasa.gov/search"
|
||||||
return requests.get(endpoint, params={"q": query}).json()
|
return requests.get(url, params={"q": query}).json()
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
print(get_apod_data("YOUR API KEY"))
|
print(save_apod("YOUR API KEY"))
|
||||||
print(
|
apollo_2011_items = get_archive_data("apollo 2011")["collection"]["items"]
|
||||||
get_archive_data("apollo 2011")["collection"]["items"][0]["data"][0][
|
print(apollo_2011_items[0]["data"][0]["description"])
|
||||||
"description"
|
|
||||||
]
|
|
||||||
)
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user