How to retrieve data from a website?
34 次查看(过去 30 天)
显示 更早的评论
I would like to retrieve data from a webasite, and store them in a matrix of two columns (or in two vectors).
I tried this:
url = ('http://matroos/direct/get_series.php?loc=hoekvanholland&source=observed&unit=waterlevel&tstart=201908140000&tstop=201908150000');
data = urlread(url);
But the result is not..satisfying!
Is there a smarter function to use instead of urlread?
(I have attached a pic of the website)
Thanx!

0 个评论
采纳的回答
the cyclist
2019-8-14
According to its documentation page, use of urlread is not recommended. It suggests using webread instead.
3 个评论
Rik
2019-8-14
Your downloaded result is just a text file. There are probably line endings encoded in there (char 10 and/or 13), but you'll have to do the parsing yourself.
Also, I haven't yet seen a situation with http where urlread couldn't manage. For https it is generally better to use webread, but even then urlread will do fine. For situations like str2num I can understand why the use is discouraged, but for urlread and histc I can't really find the reason.
the cyclist
2019-8-14
You might want to read the webread options section. The default is 'auto", which will try to determine the output type set by the server's API. I guess you could try one of the other options, if you know how the output is intended to be formatted (e.g. JSON).
It's probably just that the site returns plain text. In that case, you'll need to parse it yourself. There is an example of that here.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 String Parsing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!