
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
1-5 강의 중 chatgpt에 financedatareader 를 사용해서 삼성전자의 주식데이터를 가져오는 파이썬 코드를 만들어달라는 내용이 있습니다.
2024년 2월 현재 chatgpt 3.5 버전에서 입력했을 때 나오는 답변은 아래와 같습니다.
'죄송합니다만, 현재 내 환경에서는 financedatareader 라이브러리를 지원하지 않습니다. 대신에 pandas_datareader 라이브러리를 사용하여 삼성전자의 1월 주식 데이터를 가져오는 예제 코드를 제공할 수 있습니다. pandas_datareader 역시 주식 데이터를 가져오는 데 유용한 라이브러리 중 하나입니다.'
또한 chatgpt의 답변을 구글 colab에서 실행했을 때 결과값이 제대로 나오지 않습니다.


작성한 코드 및 에러 메세지
!pip install pandas_datareader
import pandas as pd
import datetime
import pandas_datareader as pdr
# 삼성전자의 주식 코드: 005930.KS
ticker = '005930.KS'
# 시작 날짜와 끝 날짜 설정
start_date = datetime.datetime(2023, 3, 1)
end_date = datetime.datetime(2023, 3, 31)
# Yahoo Finance에서 데이터 가져오기
df = pdr.get_data_yahoo(ticker, start_date, end_date)
# 가져온 데이터 출력
print(df)
Requirement already satisfied: pandas_datareader in /usr/local/lib/python3.10/dist-packages (0.10.0)
Requirement already satisfied: lxml in /usr/local/lib/python3.10/dist-packages (from pandas_datareader) (4.9.4)
Requirement already satisfied: pandas>=0.23 in /usr/local/lib/python3.10/dist-packages (from pandas_datareader) (1.5.3)
Requirement already satisfied: requests>=2.19.0 in /usr/local/lib/python3.10/dist-packages (from pandas_datareader) (2.31.0)
Requirement already satisfied: python-dateutil>=2.8.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=0.23->pandas_datareader) (2.8.2)
Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=0.23->pandas_datareader) (2023.4)
Requirement already satisfied: numpy>=1.21.0 in /usr/local/lib/python3.10/dist-packages (from pandas>=0.23->pandas_datareader) (1.25.2)
Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.19.0->pandas_datareader) (3.3.2)
Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.19.0->pandas_datareader) (3.6)
Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests>=2.19.0->pandas_datareader) (2.0.7)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.19.0->pandas_datareader) (2024.2.2)
Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.1->pandas>=0.23->pandas_datareader) (1.16.0)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-9-7b41ef150ccb> in <cell line: 15>()
13
14 # Yahoo Finance에서 데이터 가져오기
---> 15 df = pdr.get_data_yahoo(ticker, start_date, end_date)
16
17 # 가져온 데이터 출력
2 frames
/usr/local/lib/python3.10/dist-packages/pandas_datareader/yahoo/daily.py in _read_one_data(self, url, params)
151 try:
152 j = json.loads(re.search(ptrn, resp.text, re.DOTALL).group(1))
--> 153 data = j["context"]["dispatcher"]["stores"]["HistoricalPriceStore"]
154 except KeyError:
155 msg = "No data fetched for symbol {} using {}"
TypeError: string indices must be integers
