Skip to content

Base

flowtask.components.ProductInfo.parsers.base

ParserBase

ParserBase(*args, **kwargs)

Bases: HTTPService, SeleniumService

Base class for product information parsers.

Defines the interface and common functionality for all product parsers.

create_search_query

create_search_query(term)

Create a search query for the given term.

Parameters:

Name Type Description Default
term str

Search term (typically product model)

required

Returns:

Type Description
str

Formatted search query

extract_model_code

extract_model_code(url)

Extract model code from URL using the regex pattern if defined.

Parameters:

Name Type Description Default
url str

URL to extract model code from

required

Returns:

Type Description
Optional[str]

Extracted model code or None if not found or pattern not defined

get_product_urls

get_product_urls(search_results, max_urls=5)

Extract relevant product URLs from search results.

Parameters:

Name Type Description Default
search_results List[Dict[str, str]]

List of search result dictionaries

required
max_urls int

Maximum number of URLs to return

5

Returns:

Type Description
List[str]

List of product URLs

parse abstractmethod async

parse(url, search_term)

Parse product information from a URL.

Parameters:

Name Type Description Default
url str

URL to parse

required
search_term str

Original search term

required

Returns:

Type Description
Dict[str, Any]

Dictionary with extracted product information