当前,我正在使用MATLAB从API抓取有关open.maxmap,temp.min,压力和湿度的openweathermap.org数据。我的问题是,无论我在URL中指定什么纬度和经度,URL都保持不变。这是我用于获取当前数据的API网站的链接:https://openweathermap.org/current
当前,我正在尝试一种方法,该方法是更改纬度和经度以匹配for循环中某个点的纬度和经度。我正在尝试将这些数据写入csv文件。写作进展顺利,我唯一的问题是,无论我如何更改URL,工作表上的数据都保持不变。
clear all
close all
% Using data from https://openweathermap.org/history
% Inputs are the latitude and longitude.
%% Add the EPA Code
match_file = 'C:\Users\tadams15\Desktop\Matching_Sites.csv';
data = xlsread(match_file);
lat = data(:,1);
lon = data(:,2);
for i = 1:length(lat)
latv = lat(i);
lonv = lon(i);
url = ['https://samples.openweathermap.org/data/2.5/weather?lat=',num2str(latv),'&lon=',num2str(lonv),'&appid=b6907d289e10d714a6e88b30761fae22'];
tempmaxtarget = 'temp_max';
tempmintarget = 'temp_min';
prestarget = 'pressure';
humtarget = 'humidity';
tempmax = urlfilter(url,tempmaxtarget);
tempmin = urlfilter(url,tempmintarget);
pressure = urlfilter(url,prestarget);
humidity = urlfilter(url,humtarget);
input = [tempmin tempmax pressure humidity];
dlmwrite('Site_Info.csv',input,'delimiter',',','-append');
end
答案 0 :(得分:1)
我不使用MATLAB,而是使用Python,所以我无法进行测试,但看来您需要修复网址。
您似乎每次都在调用示例退货:
https://samples.openweathermap.org/data/2.5/weather
也许您想要代替吗?:
api.openweathermap.org/data/2.5/weather