c. 파이썬
[파이썬 / 증권사 API활용](2) QAxcontainer 사용 및 키움 모의투자 신청
로봇쟁이
2024. 8. 26. 23:55
QAxcontainer를 이용하면 ActiveX와 COM 객체를 생성하여 메소드 이용이 가능하다.
그럼 OpenAPI+를 사용할 수 있으므로 위젯을 하나 만들어본다.
import sys
from PyQt5.QtWidgets import *
from PyQt5.QAxContainer import *
class App(QWidget):
def __init__(self):
super().__init__()
self.woom = QAxWidget("KHOPENAPI.KHOpenAPICtrl.1")
self.woom.dynamicCall("CommConnect()")
self.woom.OnEventConnect.connect(self.OnEventConnect)
def OnEventConnect(self, err_code):
print(err_code)
if __name__ == "__main__":
app = QApplication(sys.argv)
myApp = App()
myApp.show()
app.exec_()
실행을 시켜보면 OpenAPI가 실행되는 것을 확인 할 수 있다.
혹시 AttributeError: 'QAxWidget' object has no attribute 'OnEventConnect'
이런 에러가 발생하는 경우 개인적으로는 OpenAPI+가 정상적으로 설치가 안되었을 때 발생하는 부분으로 보인다.
OpenAPI가 정상 설치되었다면 C드라이브에 OpenAPI 폴더가 생성되어있고 폴더 안에는 파일이 있음을 확인할 수 있다.
혹시 실행을 시켰으나 버전과 파일 삭제 실패와 같은 메시지가 나올 수 있다.
그럴땐 폴더 안에 있는 opversionup 파일을 관리자 권한으로 실행시키면 문제가 해결된다.
로그인을 하고 싶으면 모의투자를 신청할 수 있다.
신청은 키움 홈페이지에서 진행하면 된다.
제 35회 키움증권 대학생 모투대회
참가만 해도 미국소수점주식 증정!장학금, 인턴십, 해외탐방 등 각종 경품 가득!
www.kiwoom.com
현재는 로그인만 가능하고 이외에는 동작하지 않음을 알 수 있다.
반응형