фикс ошибки при сборке ZH для пустых значений описания товара
This commit is contained in:
parent
6b391a37a5
commit
6818f1c839
@ -34,6 +34,10 @@ def sanitize_filename(name: str, repl: str = "_") -> str:
|
||||
clean = re.sub(INVALID_FILE_CHARS, repl, name)
|
||||
return clean.split("?", 1)[0].strip()
|
||||
|
||||
def safe_str(val) -> str:
|
||||
"""Безопасно приводит значение к строке, None → ''."""
|
||||
return str(val) if val is not None else ""
|
||||
|
||||
# ────────────────────────── Recorder ──────────────────────────────
|
||||
class Recorder:
|
||||
def __init__(self, records_folder="records_folder"):
|
||||
@ -109,10 +113,11 @@ class Recorder:
|
||||
url_full = row[idx["Краткое описание"]]
|
||||
name_orig = row[idx["Название товара или услуги"]].capitalize()
|
||||
desc_orig = (
|
||||
row[idx["Полное описание"]].replace("\n", "<br/>") + "<br/>" +
|
||||
row[idx["Параметр: Уход"]].replace("\n", "<br/>") + "<br/>" +
|
||||
row[idx["Параметр: Происхождение"]].replace("\n", "<br/>")
|
||||
safe_str(row[idx["Полное описание"]]).replace("\n", "<br/>") + "<br/>" +
|
||||
safe_str(row[idx["Параметр: Уход"]]).replace("\n", "<br/>") + "<br/>" +
|
||||
safe_str(row[idx["Параметр: Происхождение"]]).replace("\n", "<br/>")
|
||||
).strip("<br/>")
|
||||
|
||||
images = [img for img in row[idx["Изображения варианта"]].split("\n") if img]
|
||||
|
||||
cat_raw = row[idx["Размещение на сайте"]].replace("Каталог/ZaraHome/WOMEN/", "")
|
||||
|
||||
@ -28,7 +28,7 @@ def is_temp_or_hidden(name: str) -> bool:
|
||||
|
||||
# === Пути ===
|
||||
script_dir = get_script_dir()
|
||||
folder_path = os.path.join(script_dir, 'Files-todo/manifest')
|
||||
folder_path = os.path.join(script_dir, 'Files-todo')
|
||||
|
||||
# имя результата: All-todo-YYYYMMDD-HHMM.xlsx
|
||||
timestamp = datetime.now().strftime('%Y%m%d-%H%M')
|
||||
|
||||
Loading…
Reference in New Issue
Block a user