상속한 class init 바꿔서 실행하기

Dongsung Kim·2023년 1월 2일
0

문제점

PublicDataReader 를 import 해서 쓰고 있는데,
신청 안한 데이터 모두 체크하는데 시간 대략 6초정도 더 쓰고 있었음. (이거 줄이려고 한 60분 넘게 찾아봤네...)

해결책

  1. git clone 해서 변수 바꾸기
    • 클론해서 내껄로 바꿔서 내꺼 import 해도 됨. 그러기 싫음
  2. class 의 init 을 override 하기
    • 기존 class 고정하고 init만 수정해서 바꿔 쓰기
    • 나중에 뭐 안바꿔도 될 듯

Detail

# new __init__ function 추가하기
def __init__new(self, ~~~):
    # 원래 코드에서 살짝 바꿈

import PublicDataReader as pdr
Transaction_new = pdr.Transaction
Transaction_new.__init__ = __init__new

ts = Transaction_new(~~~)

Conclusion

이거 하면, library 에서 필요한 것만 살짝씩 바꿔서 쓰는데 큰 문제 없을 듯.

profile
Pick one

1개의 댓글

comment-user-thumbnail
2023년 1월 10일

안녕하세요. 신청 안 한 API 서비스까지 체크하는 로직을 이번 업데이트에서 제거했습니다. 정확하게는 기존 Transaction 클래스 대신 TransactionPrice 클래스를 새로 추가했습니다. 관련 링크 첨부드립니다.

https://github.com/WooilJeong/PublicDataReader/releases/tag/v1.0.10

답글 달기