download data from https

I would like to download data with webread from an https witha formed complex query (without using the basic query options in webread, websave as they would not work).
However I am getting a "Rorbidden" answer and error that does not explain much.
Any ideas?

1 个评论

Have you checked if the specific website allows non-human access?
Also, how do you expect us to give you a solution if you only tell us you're getting an 'access forbidden' error?

请先登录,再进行评论。

回答(1 个)

Amrtanshu Raj
Amrtanshu Raj 2021-6-25

0 个投票

Hi,
As mentioned in the documentation. The Forbidden error is shown when Client does not have the correct credentials to make a request.
Hope this helps.

6 个评论

This error may also happen if non-human requests are blocked.
This is one of the websites I am trying to open.
I can open it from my python script without credentials so I don't understand why it would not work in Matlab.
What exact code did you try?
>> mchp = webread("https://query1.finance.yahoo.com/v7/finance/download/MCHP?period=11624665600&period2=1624665600&interval=1d&events=history&includeAdjustedClose=true")
Error using matlab.internal.webservices.HTTPConnector/copyContentToByteArray (line 373)
The server returned the status 403 with message "Forbidden" in response to the request to URL
https://query1.finance.yahoo.com/v7/finance/download/MCHP?period1=1624665600&period2=1624665600&interval=1d&events=history&includeAdjustedClose=true.
Error in readContentFromWebService (line 46)
byteArray = copyContentToByteArray(connection);
Error in webread (line 125)
[varargout{1:nargout}] = readContentFromWebService(connection, options);
however I can use the following python code and it works:
response = ulib.request.urlopen("https://...")
data = response.read()
You can use Python from MATLAB - there is a webinar on that.

请先登录,再进行评论。

产品

版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by