Spaces:
Sleeping
Sleeping
| from hashlib import md5 | |
| import json | |
| import os | |
| from dotenv import load_dotenv | |
| load_dotenv() | |
| def save_product_spec(url: str, product_spec: dict) -> bool: | |
| """ | |
| Save the product specification to the cache. | |
| Args: | |
| url (str): The URL of the product. | |
| product_spec (dict): The product specification to save. | |
| Returns: | |
| bool: True if the product specification was saved successfully in the cache location, False otherwise. | |
| """ | |
| filename = md5(url.encode()).hexdigest() | |
| filename = f"{filename}.json" | |
| filepath = os.path.join(os.getenv("PROD_SPEC_DIR", "prod_spec"), filename) | |
| try: | |
| with open(filepath, "w") as f: | |
| json.dump(product_spec, f, ensure_ascii=False, indent=2) | |
| return True | |
| except Exception as e: | |
| return False | |
| if __name__ == "__main__": | |
| url = "https://comfy.ua/ua/smartfon/apple-iphone-13-128" | |
| product_spec = { | |
| "Діагональ дисплея": '6,7"', | |
| "Тип екрану": "Super Retina XDR", | |
| "Модель процесора": "Apple A14 Bionic", | |
| "Основна камера": "12 Мп", | |
| "Ємність акумулятора": "3687 мАг", | |
| "name": "Смартфон Apple iPhone 12 Pro Max 256Gb Graphite (REF, A)", | |
| "price": "29 499 ₴", | |
| } | |
| print(save_product_spec(url, product_spec)) | |