download Yahoo Finance data with Python

Question:

I have this code but it doesn’t work and I don’t know why… please help!

import numpy as np
import pandas as pd
from pandas_datareader import data
TSLA = data.DataReader('TSLA', 'yahoo', start='2020-01-01')
print("TSLA:",TSLA)
Traceback (most recent call last):
  File "C:UsersDavidDesktopdavidSonaPythonPRUEBA.py", line 4, in <module>
    TSLA = data.DataReader('TSLA', 'yahoo', start='2020-01-01')
  File "C:UsersDavidAppDataLocalProgramsPythonPython37-32libsite-packagespandasutil_decorators.py", line 208, in wrapper
    return func(*args, **kwargs)
  File "C:UsersDavidAppDataLocalProgramsPythonPython37-32libsite-packagespandas_datareaderdata.py", line 384, in DataReader
    session=session,
  File "C:UsersDavidAppDataLocalProgramsPythonPython37-32libsite-packagespandas_datareaderbase.py", line 253, in read
    df = self._read_one_data(self.url, params=self._get_params(self.symbols))
  File "C:UsersDavidAppDataLocalProgramsPythonPython37-32libsite-packagespandas_datareaderyahoodaily.py", line 153, in _read_one_data
    resp = self._get_response(url, params=params)
  File "C:UsersDavidAppDataLocalProgramsPythonPython37-32libsite-packagespandas_datareaderbase.py", line 181, in _get_response
    raise RemoteDataError(msg)
pandas_datareader._utils.RemoteDataError: Unable to read URL: https://finance.yahoo.com/quote/TSLA/history?period1=1577847600&period2=1667185199&interval=1d&frequency=1d&filter=history
Response Text:
b'<!DOCTYPE html>n  <html lang="en-us"><head>n  <meta http-equiv="content-type" content="text/html; charset=UTF-8">n      <meta charset="utf-8">n      <title>Yahoo</title>n      <meta name="viewport" content="width=device-width,initial-scale=1,minimal-ui">n      <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">n      <style>n  html {n      height: 100%;n  }n  body {n      background: #fafafc url(https://s.yimg.com/nn/img/sad-panda-201402200631.png) 50% 50%;n      background-size: cover;n      height: 100%;n      text-align: center;n      font: 300 18px "helvetica neue", helvetica, verdana, tahoma, arial, sans-serif;n  }n  table {n      height: 100%;n      width: 100%;n      table-layout: fixed;n      border-collapse: collapse;n      border-spacing: 0;n      border: none;n  }n  h1 {n      font-size: 42px;n      font-weight: 400;n      color: #400090;n  }n  p {n      color: #1A1A1A;n  }n  #message-1 {n      font-weight: bold;n      margin: 0;n  }n  #message-2 {n      display: inline-block;n      *display: inline;n      zoom: 1;n      max-width: 17em;n      _width: 17em;n  }n      </style>n  <script>n    document.write('<img src="//geo.yahoo.com/b?s=1197757129&t='+new Date().getTime()+'&src=aws&err_url='+encodeURIComponent(document.URL)+'&err=%<pssc>&test='+encodeURIComponent('%<{Bucket}cqh[:200]>')+'" width="0px" height="0px"/>');var beacon = new Image();beacon.src="//bcn.fp.yahoo.com/p?s=1197757129&t="+new Date().getTime()+"&src=aws&err_url="+encodeURIComponent(document.URL)+"&err=%<pssc>&test="+encodeURIComponent('%<{Bucket}cqh[:200]>');n  </script>n  </head>n  <body>n  <!-- status code : 404 -->n  <!-- Not Found on Server -->n  <table>n  <tbody><tr>n      <td>n      <img src="https://s.yimg.com/rz/p/yahoo_frontpage_en-US_s_f_p_205x58_frontpage.png" alt="Yahoo Logo">n      <h1 style="margin-top:20px;">Will be right back...</h1>n      <p id="message-1">Thank you for your patience.</p>n      <p id="message-2">Our engineers are working quickly to resolve the issue.</p>n      </td>n  </tr>n  </tbody></table>n  </body></html>'

Thanks!!

I would like to solve a problem with my code

Asked By: David T

||

Answers:

import numpy as np
import pandas as pd
from pandas_datareader import data

TSLA = data.get_data_yahoo('TSLA', start='2020-01-01')
print("TSLA:",TSLA)

Output

                Open       High      Low        Close       Adj Close    Volume
Date                        
2020-01-02  28.299999   28.713333   28.114000   28.684000   28.684000   142981500
2020-01-03  29.366667   30.266666   29.128000   29.534000   29.534000   266677500
2020-01-06  29.364668   30.104000   29.333332   30.102667   30.102667   151995000
2020-01-07  30.760000   31.441999   30.224001   31.270666   31.270666   268231500
2020-01-08  31.580000   33.232666   31.215334   32.809334   32.809334   467164500
... ... ... ... ... ... ...
2022-10-24  205.820007  213.500000  198.589996  211.250000  211.250000  100446800
2022-10-25  210.100006  224.350006  210.000000  222.419998  222.419998  96507900
2022-10-26  219.399994  230.600006  218.199997  224.639999  224.639999  85012500
2022-10-27  229.770004  233.809998  222.850006  225.089996  225.089996  61638800
2022-10-28  225.399994  228.860001  216.350006  228.520004  228.520004  69039900

if the error still persists try upgrade the library

pip install --upgrade pandas-datareader
Answered By: Midhilesh Momidi
Categories: questions Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.