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

5 ビュー (過去 30 日間)
Enric Astals
Enric Astals 2020 年 3 月 9 日
コメント済み: Guillaume 2020 年 3 月 11 日
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 件のコメント
Enric Astals
Enric Astals 2020 年 3 月 9 日
I mean, when modifying weboptions function
Turlough Hughes
Turlough Hughes 2020 年 3 月 9 日
Try what Guillaume suggested. Let us know if you have any errors coming back.

サインインしてコメントする。

回答 (2 件)

Guillaume
Guillaume 2020 年 3 月 9 日
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 2020 年 3 月 10 日
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 件のコメント
Enric Astals
Enric Astals 2020 年 3 月 11 日
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 2020 年 3 月 11 日
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.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeStartup and Shutdown についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by