graph TD
A[Start DataExtractor] --> B[Receive Product URL]
B --> C[Parse URL Domain]
C --> D{Is Amazon URL?}
C --> E{Is Etsy URL?}
D -->|Yes| F[Apply Amazon HTML Parser]
E -->|Yes| G[Apply Etsy HTML Parser]
F --> H[Extract Title]
F --> I[Extract Bullet Points]
F --> J[Extract Description]
F --> K[Extract Main Image URL]
G --> L[Extract Title]
G --> M[Extract Bullet Points]
G --> N[Extract Description]
G --> O[Extract Main Image URL]
H --> P[Structure Data]
I --> P
J --> P
K --> P
L --> P
M --> P
N --> P
O --> P
P --> Q[Format JSON Output]
Q --> R[Validate Data Completeness]
R --> S{Data Complete?}
S -->|No| T[Log Error]
S -->|Yes| U[Return Structured Data]
T --> V[Request Manual Review]
U --> W[End DataExtractor]