How can I import "curl" API in MATLAB using webread function?
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Josh Goreham
am 28 Apr. 2022
Kommentiert: Josh Goreham
am 29 Apr. 2022
I am trying to import a dataset from a website (https://www.sapsailing.com/sailingserver/webservices/api/v1/) using their API. The specific website to use (from their example) is: curl "https://www.sapsailing.com/sailingserver/api/v1/regattas/Kornati%20Cup%202019%20-%20B46/races/B46%20R1/startanalysis"
In the case above, I believe my issue is the "curl" portion of the website. I am unsure what this is or how to code it into MATLAB. I tried the following:
api_url = 'https://www.sapsailing.com/sailingserver/api/v1/regattas/Kornati%20Cup%202019%20-%20B46/races/B46%20R1/startanalysis';
api = webread(api_url);
With this error message:
Error using matlab.internal.webservices.HTTPConnector/copyContentToByteArray
The server returned the status 404 with message "Not Found" in response to the request to URL
https://www.sapsailing.com/sailingserver/api/v1/regattas/Kornati%20Cup%202019%20-%20B46/races/B46%20R1/startanalysis.
Error in readContentFromWebService (line 46)
byteArray = copyContentToByteArray(connection);
Error in webread (line 125)
[varargout{1:nargout}] = readContentFromWebService(connection, options);
I also included "curl" in the webread function, but that did not work either.
I am able to import data from a similar website using this code:
api_url = 'http://www.sapsailing.com/sailingserver/api/v1/leaderboards';
api = webread(api_url);
I appreciate any help.
Thank you,
Josh
0 Kommentare
Akzeptierte Antwort
Jan
am 28 Apr. 2022
Bearbeitet: Jan
am 28 Apr. 2022
What about using curl instead? This is included in Linux, MacOS and Windows also:
system(['curl "https://www.sapsailing.com/sailingserver/api/v1/regattas/', ...
'Kornati%20Cup%202019%20-%20B46/races/B46%20R1/startanalysis"'])
The web service replies: "Could not find a regatta with name 'Kornati Cup 2019 - B46'"
So there seems to be another problem.
3 Kommentare
Jan
am 29 Apr. 2022
Try:
system('curl "insert your URL">D:\YourFolder\FileName')
to write the output to a file instead of displaying it in the command window.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Web Services finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!