It is necessary to create a data parser for product listings on Rozetka based on the links.
The parser should have two modes of operation:
1. Comparison of cards in the listings
2. Verification of store cards
1. Comparison of cards in the listings
Examples of links:
Search query:
https://rozetka.com.ua/ua/search/?text=%D0%B4%D0%B8%D1%82%D1%8F%D1%87%D0%B8%D0%B9%20%D1%84%D0%BE%D1%82%D0%BE%D0%B0%D0%BF%D0%B0%D1%80%D0%B0%D1%82
Product category, or search query translates to a category:
https://rozetka.com.ua/ua/detskie-tsifrovie-fotoapparati-i-videokameri/c4674106/
All data for this listing needs to be filled in the table. A filled table for this link is attached.
The request to fill the table is made manually by a person, and the person specifies the number of pages of listings for parsing.
The table is divided into three parts.
The first, blue header - is the ranking position of the products displayed by the link, the ordinal number of the card from left to right and top to bottom.
The second, green header - is the data taken from the product card in the "All about the product" section. The list of columns is the same for all cards. If there are more than two prices in the card, the final price is the lowest.
The third, orange header – is the delivery data. For each delivery method, there are two values – the term and the rate. In order for all delivery methods to be displayed, the city must be Kyiv. The list of deliveries may vary for different cards, and all of them must be entered into the table.
The fourth, yellow header - is the data taken from the product card in the "Specifications" section. The list of columns and their quantity varies for all cards because different products have different specifications and their quantity. All specifications must be filled in. Specifications are optional fields in the card, so they may or may not be filled in the card.
***If parsing is done by product category, or by a query that translates to a category, all specifications that are in the filters of the listings for this product category must be displayed first, and the header of these columns should be shaded gray. Other specifications should be placed to the right of them.
Throughout the table, if there is no data, the cell is not filled.
Columns marked with ** are those that are not filled in this mode.
It should also be understood that the listings and data in the cards are always changing. Therefore, if you follow this link, the listings will already be different, and the data in the cards will also be.
2. Verification of store cards
The same table is used with the differences described below.
Examples of links:
All products of the seller:
https://rozetka.com.ua/ua/seller/zemed/goods/
Intermediate category of the seller's store https://rozetka.com.ua/ua/seller/zemed/goods/?section_id=2394297
Final category of the seller's store https://rozetka.com.ua/ua/seller/zemed/goods/?section_id=4674576
Report settings:
1. Selected products
2. With specifications / Without specifications
Selected products allow the option to add one or several links to products or a group of products. At the same time, such selections should have the ability to be saved under their name and then selected from the saved ones.
When setting "Without specifications," the parser should not output the specifications of the products in the table. When setting "With specifications," the parser should display the table for each final category of products that has no subcategories on separate sheets of the file named after the categories and fulfill the condition marked above ***. At the same time, if it turns out that at least one specification that is filtered in this category is not filled, the name of the sheet should start with three exclamation marks "!!!".
Columns marked with ** are filled only in the "Verification of store cards" mode with the "Without specifications" setting.