Очистка данных с Openweathermap.org с помощью MATLAB - PullRequest
0 голосов
/ 26 марта 2019

В настоящее время я использую MATLAB для очистки данных openweathermap.org о максимальной температуре, минимальной температуре, давлении и влажности из API. Моя проблема в том, что независимо от того, какой широту и долготу я указываю в 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

1 Ответ

1 голос
/ 26 марта 2019

Я не использую MATLAB, я использую Python, поэтому не могу тестировать, но, похоже, вам нужно исправить свой URL.

Похоже, вы просто каждый раз вызываете возврат сэмпла:

https://samples.openweathermap.org/data/2.5/weather

Может быть, вы хотите вместо этого?:

api.openweathermap.org/data/2.5/weather
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...