from PyQt5.QtCore import QThread, pyqtSignal import sqlite3 import time, json from random import randint import logging from modules.automatch_tao import automatch # 로거 인스턴스 가져오기 logger = logging.getLogger('default_logger') class TaoScrapingThread(QThread): progress_updated = pyqtSignal(int, int) #finished = pyqtSignal() def __init__(self, db_name, item_count, sort_order, parent=None): super(TaoScrapingThread, self).__init__(parent) self.db_name = db_name self.item_count = item_count self.sort_order = sort_order def run(self): def update_progress(current, total): self.progress_updated.emit(total, current) # 진행 상황을 UI 스레드에 전달합니다. logger.debug("Automatch 작업 시작") try: # automatch 함수 호출 시 콜백 함수 전달 automatch(self.db_name, self.item_count, self.sort_order, progress_callback=update_progress) time.sleep(0.1) # 예시로 작업 지연을 표현합니다. logger.debug("Automatch 작업 완료") except Exception as e: logger.error(f"Automatch 스레드에서 오류 발생: {e}") finally: self.finished.emit()