안녕하세요. 이사작전.com의 개발자 말랑고양입니다.
오늘은 파이썬 프로그램을 개발하다가 묘한 에러에 직면하였는데요
그것을 해결하는 방법을 공유하려합니다.
키움증권 OpenAPI를 활용한 파이썬 프로그램을 개발하다가 아래와 같은 에러에 직면하였습니다.
AttributeError: 'QAxWidget' object has no attribute 'OnEventConnect'
음...
검색... 검색.. 검색..
위 에러에 대해서 구글을 전부 뒤져보았는데 해결방법이 없었습니다. 칫..
하루를 꼬박 날리긴 하였지만, 스스로 문제를 해결하였습니다.
원인도 정확하게 발견해내었습니다.
[원인 진단]
프로그램적 문제, 파이썬 버전 문제가 아니라,
키움증권 OpenAPI ocx등록이 되어있지 않았기 때문에 에러가 발생하였습니다.
왜 그렇게 생각하였냐면, KOA Studio에서 상위 탭 > 파일 > Open API 접속 버튼을 눌렀을 때
유사한 에러가 발생하였기 때문입니다.
<사진1> KOA StudioSA
[해결 방법]
결론적으로 키움증권에 들어가셔서 OpenAPISetup.exe를 다운받으시고 설치하시면 됩니다.
https://www1.kiwoom.com/nkw.templateFrameSet.do?m=m1408000000
누군가가 파이썬 32bit 때문이라고 포스팅을 해두었는데,
그것이 아니라 정확한 원인은 키움증권 OpenAPI ocx등록이 되어있지 않았기 때문입니다.
OpenAPI ocx쪽을 파다보면 해결됩니다.
이 포스팅이 키움증권 OpenAPI로 프로그램을 개발하는 개발자님들에게 도움이 되었으면 좋겠습니다.
위의 방법으로 해결이 안되었거나, 기타 질문이 있다면 언제든 댓글 남겨주세요. 감사합니다.
[추가정보]
mfc100.dll 오류 1분 해결 방법은 아래와 같습니다. 참고바랍니다.
https://ungdoli0916.tistory.com/44
[추가정보]
처음하면 모를 수도 있죠. 저도 그런 때가 있었으니.. 겸손한 마음으로 캡쳐사진 더 전달드립니다.
안된다고 하시는거 보니까, OpenAPISetup 제거하시고 다시 설치해보세요.
<사진2> OpenAPI제거
그리고 아래의 사진3 처럼 파일들이 c드라이브 OpenAPI디렉터리에 잘 들어가있는지 점검해보세요.
<사진3> C드라이브 OpenAPI디렉터리구조
- 수정일 : 2019.11.13
추가로 질문사항이 있다면 댓글남겨주세요. 감사합니다.
이사작전 앱 다운로드는 저에게 포상입니다.
#키움증권 #OpenAPI #AttrubuteError