Skip to content

YahooOptions not working properly #923

Open
@tachyon-ops

Description

@tachyon-ops

So, I have tried to request options and calls using

import pandas_datareader.data as web

FB = web.YahooOptions('FB')
print(FB.expiry_dates)

which yields

pandas_datareader._utils.RemoteDataError: Unable to read URL: https://query1.finance.yahoo.com/v7/finance/options/FB
Response Text:
b'Forbidden'

Now, accessing that URL from the browser works fine. So I then tried to do a simple 'requests' get. It turned out:

response = requests.get("https://query1.finance.yahoo.com/v7/finance/options/FB")
print(response.text)

yields

Forbidden

But if I add headers

headers = {'User-Agent': 'Firefox'}
response = requests.get(
    "https://query1.finance.yahoo.com/v7/finance/options/FB", headers=headers).json()

I get the proper response.
Calls work the same...

Therefore, I think Yahoo is constraining its api no?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions