Can I import dynamic data from a private server into Matlab?

8 visualizaciones (últimos 30 días)
Enric Astals
Enric Astals el 9 de Mzo. de 2020
Comentada: Guillaume el 11 de Mzo. de 2020
Hello,
I am currently writing some code in Matlab to process data from a private server (with private I mean that every time I login, it asks me for the password). To do so, I have been downloading the data everyday into .csv files.
The data on the server is updated every minute.
Is there a way to connect Matlab to the private server, give Matlab the power to remember the password (or override it) and, when the code runs, to collect all updated data?
Thank you very much.
Sidenote: I am at a pretty basic level of Matlab.
  4 comentarios
Enric Astals
Enric Astals el 9 de Mzo. de 2020
I mean, when modifying weboptions function
Turlough Hughes
Turlough Hughes el 9 de Mzo. de 2020
Try what Guillaume suggested. Let us know if you have any errors coming back.

Iniciar sesión para comentar.

Respuestas (2)

Guillaume
Guillaume el 9 de Mzo. de 2020
How easy this is to do is going to depend on the server (how it is implemented). You would use one of webread, webwrite or websave.
Assuming your server is fully REST compatible, and it uses basic or digest authentication, accessing your data may be as easy as:
url = 'https://yourprivateserver/somelocation/somefile.csv';
username = 'yourusername';
password = 'secret'; %note that if write it in an m file, anybody who has access to the m file can read your password
data = webread(url, weboptions('Username', username, 'Password', password));

Enric Astals
Enric Astals el 10 de Mzo. de 2020
Hi, thank you for both your answers. I tried what you recommended, but got these errors, which are the same errors I got trying what the other thread recommended.
I'll attach the error in the following lines, only modifying the password for mypassword.
>> Untitled
Error using weboptions
'db_ciment' is not a recognized parameter. For a list of valid name-value pair arguments, see the
documentation for weboptions.
Error in weboptions>parseInputs (line 529)
p.parse(args{:});
Error in weboptions (line 301)
inputs = parseInputs(options, varargin);
Error in Untitled (line 4)
data = webread(url, weboptions('db_ciment', username, 'mypassword', password));
  3 comentarios
Enric Astals
Enric Astals el 11 de Mzo. de 2020
I see! Thank you.
I now only obtain one error, which seems to be due to a 'unexpected expression' of the password. Do you know if it is problematic for the password to contain numbers, letters and caps?
Guillaume
Guillaume el 11 de Mzo. de 2020
Can you give us the full text of the error message so we can understand if it comes from matlab or your server?
Matlab does no check at all on the content of the password, it just passes it to the server. However, it sounds like you have a syntax error.

Iniciar sesión para comentar.

Categorías

Más información sobre Introduction to Installation and Licensing en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by