josw123 / dart-fss

한국 금융감독원에서 운영하는 다트(Dart) 시스템 크롤링을 위한 라이브러리
https://github.com/josw123/dart-fss
MIT License
319 stars 111 forks source link

종목코드 051310의 2012.06 반기보고서 포괄손익계산서가 정상적으로 parsing되지 않는것 같습니다. #137

Closed sukwoo1414 closed 1 year ago

sukwoo1414 commented 1 year ago

안녕하세요, 좋은 라이브러리를 만들어주셔서 감사합니다.

아래 코드로 종목코드 051310의 2012년 8월 14일에 올라온 2012년 반기보고서를 추출해보면 포괄손익계산서가 거의 비어있고, 재무계정의 값이 비어있습니다.

import dart_fss as dart

dart.set_api_key(api_key=DART_API_KEY)
corp_list = dart.get_corp_list()
corp = corp_list.find_by_stock_code('051310', include_delisting=True)

fs = corp.extract_fs(bgn_de='20120813', end_de='20120815',report_tp=['half'], separate=True)
print(fs)
fs.save()
~                   

dart.fss.or.kr에서 공시보고서와 xbrl 원문을 보면 포괄손익계산서의 재무 계정들의 값이 정상적으로 기록되어 있는것으로 보입니다. 해결가능한 문제인지 궁금합니다. 감사합니다.

josw123 commented 1 year ago

안녕하세요.

해당 버그는 XBRL 데이터를 처리하는 과정에서 발생하는 버그로 생각됩니다. 발생 원인은 확인하였으며, 관련 코드 수정 후 업데이트를 배포하도록 하겠습니다.

감사합니다.

sukwoo1414 commented 1 year ago

051310 말고도 정상적으로 파싱되지 않는 재무제표들의 리스트입니다. 모두 별도 재무제표이며 analyze_xbrl()함수가 리턴하는 dataframe이 거의 비어있거나 비정상적인 상태인데, 공시보고서와 xbrl원문에는 해당 값이 존재하는 경우입니다. stock_code는 종목 코드, settlement는 연도와 분기, disclosure는 공시날짜입니다. bs, cis, cf중 문제가 발생한 테이블만 표시하였습니다.

stock_code=000880, settlement=201709, disclosure=20171114, fs=cis stock_code=007280, settlement=201303, disclosure=20130515, fs=bs stock_code=011080, settlement=201209, disclosure=20121113, fs=cf stock_code=016170, settlement=201709, disclosure=20171114, fs=bs stock_code=016170, settlement=201709, disclosure=20171114, fs=cf stock_code=038320, settlement=201203, disclosure=20120515, fs=cf stock_code=038320, settlement=201206, disclosure=20120824, fs=cf stock_code=009240, settlement=201212, disclosure=20130401, fs=bs

아래는 파싱이 안되는 재무제표가 여러분기에 걸쳐 연속적으로 나타나는 경우입니다. stock_code=002250, settlement=201203, disclosure=20120515, fs=cis ~ settlement=201212, disclosure=20130509, fs=cis stock_code=005450, settlement=201203, disclosure=20120515, fs=bs ~ settlement=201509, disclosure=20151116, fs=bs stock_code=007070, settlement=201203, disclosure=20120529, fs=bs ~ settlement=201706, disclosure=20170814, fs=bs stock_code=008080, settlement=201203, disclosure=20120515, fs=bs ~ settlement=201212, disclosure=20130329, fs=bs stock_code=009240, settlement=201312, disclosure=20140331, fs=bs ~ settlement=201409, disclosure=20141128, fs=bs

천천히라도 확인해주시면 감사하겠습니다.

josw123 commented 1 year ago

네, 한번 확인해보도록 하겠습니다.

josw123 commented 1 year ago

35761cc8d8a371c82e59adfe742f5f914d404179 를 통해 올려주신 내용에 관한 버그가 모두 수정된 것으로 확인되었습니다. 조만간 수정된 버전을 배포하도록 하겠습니다.

josw123 commented 1 year ago

문제가 해결된 v0.4.3 배포하였습니다.

버그 리포팅 감사합니다.