Canon¶
flowtask.components.ProductInfo.parsers.canon
¶
CanonParser
¶
Bases: ParserBase
Parser for Canon product information.
Extracts product details from Canon's USA and Canada websites using Selenium.
create_search_query
¶
Create region-specific search query.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
term
|
str
|
Search term (typically product model) |
required |
Returns:
| Type | Description |
|---|---|
str
|
Formatted search query for the appropriate region |
determine_region
¶
Determine region based on retailer information.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
retailer
|
Optional[str]
|
Retailer string that may contain region information |
required |
Returns:
| Type | Description |
|---|---|
str
|
'ca' for Canada, 'us' for United States (default) |
get_product_urls
¶
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 that match the Canon product pattern |
parse
async
¶
Parse product information from a Canon URL using Selenium.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
url
|
str
|
Canon product URL |
required |
search_term
|
str
|
Original search term |
required |
retailer
|
Optional[str]
|
Optional retailer information to determine region |
None
|
Returns:
| Type | Description |
|---|---|
Dict[str, Any]
|
Dictionary with product information |