remove "requests" dependency

This commit is contained in:
lda committed 2025-05-06 18:07:39 +07:00
1 parent b04a4704a5
commit 5cf1364e7e
2 files changed
+41 -5648

No files matched your search

+41 -23
View File
@@ -1,31 +1,49 @@
import requests import urllib.parse
import pandas as pd import urllib.request
from datetime import datetime from datetime import datetime
# Define parameters # Define parameters
latitude = 21.0305 latitude, longitude = 21.04815477090267, 105.80123159165096 # lmao
longitude = 105.8458
start_date = "2010-01-01" start_date = "2010-01-01"
end_date = datetime.now().strftime("%Y-%m-%d") # Today's date end_date = datetime.now().strftime("%Y-%m-%d") # Today's date
# Construct the API URL # Define desired parameters
url = ( # T2M MERRA-2 Temperature at 2 Meters (C)
f"https://power.larc.nasa.gov/api/temporal/daily/point" # PRECTOTCORR MERRA-2 Precipitation Corrected (mm/day)
f"?parameters=QV2M" # QV2M MERRA-2 Specific Humidity at 2 Meters (g/kg)
f"&community=RE" # RH2M MERRA-2 Relative Humidity at 2 Meters (%)
f"&longitude={longitude}" # PS MERRA-2 Surface Pressure (kPa)
f"&latitude={latitude}" # WS10M MERRA-2 Wind Speed at 10 Meters (m/s)
f"&start={start_date.replace('-', '')}" # WD10M MERRA-2 Wind Direction at 10 Meters (Degrees)
f"&end={end_date.replace('-', '')}" # more at https://power.larc.nasa.gov/data-access-viewer/
f"&format=CSV"
)
# Make the API request params = {
response = requests.get(url) "parameters": "QV2M,T2M,PRECTOTCORR",
if response.status_code == 200: "community": "RE",
# Save the CSV content to a file "longitude": longitude,
with open("hanoi_qv2m_latest.csv", "w") as file: "latitude": latitude,
file.write(response.text) "start": start_date.replace("-", ""),
print("Data successfully downloaded and saved to 'hanoi_qv2m_latest.csv'.") "end": end_date.replace("-", ""),
"format": "CSV",
}
# Encode parameters
query_string = urllib.parse.urlencode(params)
# Construct the full URL
base_url = "https://power.larc.nasa.gov/api/temporal/daily/point"
url = f"{base_url}?{query_string}"
# Make the API request using urllib
try:
with urllib.request.urlopen(url) as response:
if response.status == 200:
csv_data = response.read().decode("utf-8")
with open("hanoi_weather_data.csv", "w", encoding="utf-8") as file:
file.write(csv_data)
print("Data successfully downloaded and saved to 'hanoi_weather_data.csv'.")
else: else:
print(f"Failed to retrieve data: {response.status_code}") print(f"Failed to retrieve data: HTTP Status Code {response.status}")
except urllib.error.URLError as e:
print(f"Failed to retrieve data: {e.reason}")
File diff suppressed because it is too large. Load diff