INVESTAR / StockAnalysisInPython

457 stars 412 forks source link

9장 코드 오류 #142

Closed azaz09090 closed 2 years ago

azaz09090 commented 2 years ago

1 image

패스워드를 123으로 Inverstar 내 세 파일에 모두 문제없이 설정되어 있는 상황입니다. 데이터베이스도 utf8로 만들었습니다. 그럼에도 마리아DB 접속이 자꾸 안되네요.. 파이썬 버젼은 3.8.8인데 버젼을 바꿔서 다시 해봐야 할까요 아니면 다른 문제가 있을까요?

에러메시지에는 Analyzer에서 접속하는데 문제가 생기는 것 같은데 도저히 모르겠네요..ㅠㅠ

코드는 저자님 깃헙 코드를 모두 복사 붙여넣기 했고, 패스워드만 수정했습니다.

OperationalError: (1045, "Access denied for user 'root'@'localhost' (using password: YES)")

azaz09090 commented 2 years ago

image

(아나콘다 주피터 노트북입니다) 판다스 버젼 1.0.1, 파이썬 버젼 3.8.1로 환경을 맞추고 나서 DBUpdateEx를 먼저 돌려보는데 code라는 명령어가 키에러가 나네요. 판다스 버젼 1.4.2 에서는 append 대신 concat을 쓰라는 Future warning메시지가 나오면서 db가 만들어지는데, 낮추니 다시 오류가 납니다. 코드는 같은데.. 뭐가 문제일까요 ?

KeyError : code 라고 뜹니다.

INVESTAR commented 2 years ago

올려주신 HeidiSQL 캡처 그림을 보니 CREATE TABLE 쿼리에서 CODE, OPEN, DATE 컬럼명이 대문자로 적혀있네요. hedisql

HeidiSQL로 investar DB에 접속하셔서 테이블의 컬럼명과 PRIMARY KEY 설정 상태를 점검해 보시고 수정하시거나 아예 기존 테이블을 삭제하시고 아래 SQL 쿼리로 테이블을 다시 만드시는 것을 추천해 드립니다.

CREATE TABLE IF NOT EXISTS company_info (
    code VARCHAR(20),
    company VARCHAR(40),
    last_update DATE,
    PRIMARY KEY (code)
);

CREATE TABLE IF NOT EXISTS daily_price (
    code VARCHAR(20),
    date DATE,
    open BIGINT(20),
    high BIGINT(20),
    low BIGINT(20),
    close BIGINT(20),
    diff BIGINT(20),
    volume BIGINT(20),
    PRIMARY KEY (code, date)
);
azaz09090 commented 2 years ago

image image

실행되고 나서 위처럼 코드를 돌려보니 데이터가 10개씩밖에 안담기네요. 뭐가 문제일까요 ?

INVESTAR commented 2 years ago

DBUpdaterEx.py가 존재하는 디렉터리에 config.json 파일이 있을텐데 그 파일에 적혀있는 pages_to_fetch 값이 1로 되어있을 겁니다. 1페이지를 가져오면 10줄(=2주일)의 데이터가 업데이트되니, 해당 숫자를 늘려주시기 바랍니다.

azaz09090 commented 2 years ago

정말정말 감사드립니다.. ㅠㅠ