#matlab #url #web-scraping
#matlab #url #очистка веб-страниц
Вопрос:
в настоящее время я использую MATLAB для очистки openweathermap.org данные о максимальной и минимальной температуре, давлении и влажности из API. Моя проблема в том, что независимо от того, какие широты и lon я указываю в 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:Userstadams15DesktopMatching_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),'amp;lon=',num2str(lonv),'amp;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:
Я не использую MATLAB, я использую Python, поэтому я не могу тестировать, но, похоже, вам нужно исправить свой URL.
Похоже, вы просто вызываете образец возврата каждый раз:
https://samples.openweathermap.org/data/2.5/weather
Может быть, вы хотите вместо этого?:
api.openweathermap.org/data/2.5/weather
Комментарии:
1. ИДЕАЛЬНО! Спасибо! Все, что мне нужно сделать сейчас, это исправить мою цель очистки, и все готово. Спасибо за помощь!
2. Была ли в этом проблема?