[object Object]

← back to FashionCrawler

Fix base extractor stub to build DataFrame from extracted data; skip None frames in YAML output

384f264de3a93ac0d97b4de7f0060434cca01c7b · 2026-05-18 20:08:42 -0700 · Steve Abrams

Files touched

Diff

commit 384f264de3a93ac0d97b4de7f0060434cca01c7b
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Mon May 18 20:08:42 2026 -0700

    Fix base extractor stub to build DataFrame from extracted data; skip None frames in YAML output
---
 fashioncrawler/extractor/base_data_extractor.py | 2 +-
 fashioncrawler/utils/io_utils.py                | 6 +++++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/fashioncrawler/extractor/base_data_extractor.py b/fashioncrawler/extractor/base_data_extractor.py
index 4bafb53..066ca1f 100644
--- a/fashioncrawler/extractor/base_data_extractor.py
+++ b/fashioncrawler/extractor/base_data_extractor.py
@@ -80,5 +80,5 @@ class BaseDataExtractor:
         for column, func in data_extraction_functions.items():
             extracted_data[column] = func()
 
-        df = pandas.DataFrame.from_dict(data_extraction_functions)
+        df = pandas.DataFrame.from_dict(extracted_data)
         return df
diff --git a/fashioncrawler/utils/io_utils.py b/fashioncrawler/utils/io_utils.py
index 6d9d952..8070e4a 100644
--- a/fashioncrawler/utils/io_utils.py
+++ b/fashioncrawler/utils/io_utils.py
@@ -372,7 +372,11 @@ class IOUtils:
         Returns:
             None
         """
-        combined_data = {name: df.to_dict("records") for name, df in dataframes.items()}
+        combined_data = {
+            name: df.to_dict("records")
+            for name, df in dataframes.items()
+            if df is not None
+        }
 
         with open(f"{filename}.yaml", "w", encoding="utf-8") as yaml_file:
             yaml.safe_dump(combined_data, yaml_file)

← 33c7bc4 Fix Depop image-link column: check get_image_links attr, not  ·  back to FashionCrawler  ·  Guard main loop against unknown enabled sites instead of cra 17d6b96 →