Parser in Python + upload to Woocommerce IP + price update
# E-commerce Automation Tool: Price and Availability Synchronization (WooCommerce)
## Project Overview
This Python script is designed for **full automation of the process of populating and updating the product catalog** on the WooCommerce/WordPress platform based on data from an external supplier (web scraping).
The project demonstrates skills in developing reliable parsers, automating business logic (updating price/availability), and deep integration with E-commerce system APIs.
---
## Key Features
* **Catalog Automation:** The script addresses the issue of manual price updates and the creation of new products.
* **Web Scraping:**
* Collecting links to all products from the specified supplier category.
* Extracting key data: name, price, full description, specifications, image and video links.
* Using `requests`, `BeautifulSoup`, `fake-useragent` to bypass and process content.
* **API Integration with WooCommerce:** Using the official `python-woocommerce` library for:
* **Price Update:** If the product exists, the script checks the price's relevance and updates it if it has changed.
* **Creating New Products:** If the product does not exist, it is automatically created in WooCommerce.
* **Managing Attributes:** Automatically checks for the presence of attributes (e.g., "Brand", "Compressor", "WI-FI") and **creates them via API** if necessary.
* **Content Processing:**
* Transliteration of product names to generate correct `slug`.
* Parsing and saving description images locally for further uploading to the server.
* Creating a short HTML description (`short_description`) based on key specifications.
* **Status Management:** Variables are used to switch categories and brands (for different suppliers).
---
## Technologies Used
| Category | Technology | Description |
| :--- | :--- | :--- |
| **Main Language** | Python | |
| **Parsing** | `BeautifulSoup`, `requests` | Extracting data from HTML pages. |
| **E-commerce API** | `python-woocommerce` | Interacting with the WordPress/WooCommerce API for CRUD operations. |
| **Obfuscation** | `fake-useragent` | Simulating a real user to prevent blocking. |
| **Transliteration** | `unidecode` | Generating correct SEO-friendly `slug` (understandable URLs). |
| **File System** | `os`, `re` | Managing paths, regular expressions. |
## Project Overview
This Python script is designed for **full automation of the process of populating and updating the product catalog** on the WooCommerce/WordPress platform based on data from an external supplier (web scraping).
The project demonstrates skills in developing reliable parsers, automating business logic (updating price/availability), and deep integration with E-commerce system APIs.
---
## Key Features
* **Catalog Automation:** The script addresses the issue of manual price updates and the creation of new products.
* **Web Scraping:**
* Collecting links to all products from the specified supplier category.
* Extracting key data: name, price, full description, specifications, image and video links.
* Using `requests`, `BeautifulSoup`, `fake-useragent` to bypass and process content.
* **API Integration with WooCommerce:** Using the official `python-woocommerce` library for:
* **Price Update:** If the product exists, the script checks the price's relevance and updates it if it has changed.
* **Creating New Products:** If the product does not exist, it is automatically created in WooCommerce.
* **Managing Attributes:** Automatically checks for the presence of attributes (e.g., "Brand", "Compressor", "WI-FI") and **creates them via API** if necessary.
* **Content Processing:**
* Transliteration of product names to generate correct `slug`.
* Parsing and saving description images locally for further uploading to the server.
* Creating a short HTML description (`short_description`) based on key specifications.
* **Status Management:** Variables are used to switch categories and brands (for different suppliers).
---
## Technologies Used
| Category | Technology | Description |
| :--- | :--- | :--- |
| **Main Language** | Python | |
| **Parsing** | `BeautifulSoup`, `requests` | Extracting data from HTML pages. |
| **E-commerce API** | `python-woocommerce` | Interacting with the WordPress/WooCommerce API for CRUD operations. |
| **Obfuscation** | `fake-useragent` | Simulating a real user to prevent blocking. |
| **Transliteration** | `unidecode` | Generating correct SEO-friendly `slug` (understandable URLs). |
| **File System** | `os`, `re` | Managing paths, regular expressions. |