-
[파이썬] eBest Xing api 실시간조회, NWS 뉴스 요청 구현 (6)프로그래밍/파이썬 2020. 2. 22. 15:44반응형
[파이썬] eBest Xing api 실시간조회, 멀티스레드 설계 (1)
[파이썬] eBest Xing api 실시간조회, 스레드 설계 구현 (2)
[파이썬] eBest Xing api 실시간조회, ThreadJob 구현 (3)
[파이썬] eBest Xing api 실시간조회, ConnectionManager 구현 (4)
[파이썬] eBest Xing api 실시간조회, QueryThreadJob 구현 (5)
[파이썬] eBest Xing api 실시간조회, NWS 뉴스 요청 구현 (6)
[파이썬] eBest Xing api 실시간조회, S3_ 코스피체결 구현 (7)
[파이썬] eBest Xing api 실시간조회, 테스트 및 실행 화면 (8)
NWS 쿼리는 요청 시 종료 전까지 최신 뉴스에 대한 정보를 수신받을 수 있다.
from name_yalsooni.crawler_py.ebest.realtime.queryjob import EventHandler from name_yalsooni.crawler_py.ebest.realtime.queryjob import QueryThreadJob from name_yalsooni.crawler_py.ebest.util import Log, EventUtil class NWSEventHandler(EventHandler): def OnReceiveRealData(self, code): title = self.event.GetFieldData("OutBlock", "title") Log.write(code + " : " + title) class NWS(QueryThreadJob): CM_NWCODE = "NWCODE" def __init__(self): QueryThreadJob.__init__(self, "RT_NWS", 0.5) def _operation_init(self): pass def _operation_call(self, command): self._event = EventUtil.get_event("NWS", NWSEventHandler) self._event.SetFieldData("InBlock", "nwcode", command[self.CM_NWCODE]) self._event.AdviseRealData()
- 16 Line
생성자에서 스레드이름과 큐 타임아웃을 파라미터로 넘긴다.- 19 Line
상위 클래스인 QueryThreadJob에서 operation 딕셔너리에 기본 오퍼레이션인 'CALL'은 등록해 줬다.
뉴스 요청의 오퍼레이션은 'CALL' 하나 밖에 없으므로 해당 메소드는 등록 해줄께 없다, pass한다.- 21 Line : _operation_call
_operation_call 메소드에선 뉴스의 알맞은 요청 파라미터를 설정하고 AdviseRealData() 메소드를 통해 요청한다.
이벤트 객체 생성 시 등록된 NWSEventHandler의 OnReceiveRealData메소드의 의해 응답이 수신된다.반응형'프로그래밍 > 파이썬' 카테고리의 다른 글
[파이썬] eBest Xing api 실시간조회, 테스트 및 실행 화면 (8) (0) 2020.02.22 [파이썬] eBest Xing api 실시간조회, S3_ 코스피체결 구현 (7) (4) 2020.02.22 [파이썬] eBest Xing api 실시간조회, QueryThreadJob 구현 (5) (2) 2020.02.22 [파이썬] eBest Xing api 실시간조회, ConnectionManager 구현 (4) (0) 2020.02.22 [파이썬] eBest Xing api 실시간조회, ThreadJob 구현 (3) (0) 2020.02.22