diff --git a/app/services/task.py b/app/services/task.py index 85a6495..49d711f 100644 --- a/app/services/task.py +++ b/app/services/task.py @@ -26,7 +26,7 @@ class TaskService: def register_scheduled_tasks(self): self.scheduler.add_job(self.hourly_pricing, 'cron', minute='36') - self.scheduler.add_job(self.hourly_orders, 'cron', hour='*', minute='26') + self.scheduler.add_job(self.hourly_orders, 'cron', hour='*', minute='42') # every 5 hours on the 24th minute #self.scheduler.add_job(self.inventory_pricing, 'cron', hour='*', minute='44') self.logger.info("Scheduled tasks registered.") diff --git a/app/services/util/_requests.py b/app/services/util/_requests.py index 6f41532..73a7b95 100644 --- a/app/services/util/_requests.py +++ b/app/services/util/_requests.py @@ -61,10 +61,14 @@ class RequestHeaders: 'origin': Headers.SELLER_ORIGIN, 'referer': Headers.SELLER_REFERER } + POST_HEADERS = { + 'content-type': 'application/json' + } class URLHeaders: # combine base and seller headers ORDER_HEADERS = {**RequestHeaders.BASE_HEADERS, **RequestHeaders.SELLER_HEADERS} + POST_HEADERS = {**RequestHeaders.BASE_HEADERS, **RequestHeaders.SELLER_HEADERS, **RequestHeaders.POST_HEADERS} class RequestsUtil: def __init__(self, browser_type: Browser = Browser.BRAVE): @@ -119,7 +123,7 @@ class RequestsUtil: def send_request(self, url: str, method: str, cookies: dict, data=None) -> requests.Response: """Send a request with the specified cookies""" - headers = self.set_headers(url) + headers = self.set_headers(url, method) if not headers: raise ValueError("Headers not set") @@ -135,10 +139,12 @@ class RequestsUtil: logger.error(f"Request failed: {str(e)}") return None - def set_headers(self, url: str): + def set_headers(self, url: str, method: str) -> Dict: # use tcgplayerendpoints enum to set headers where url partially matches enum value for endpoint in TCGPlayerEndpoints: - if endpoint.value in url: + if endpoint.value in url and str.upper(method) == "POST": + return URLHeaders.POST_HEADERS + elif endpoint.value in url: return URLHeaders.ORDER_HEADERS else: raise ValueError(f"Endpoint not found in TCGPlayerEndpoints: {url}")