mirror of
https://github.com/AllSpiceIO/cofactr-cogs.git
synced 2025-04-18 07:48:55 +00:00
Change search_strategy of "default" to "fuzzy"
This commit is contained in:
parent
e91223ecff
commit
57bb688bd9
@ -26,7 +26,7 @@ inputs:
|
||||
default: Quantity
|
||||
search_strategy:
|
||||
description: >
|
||||
The Cofactr search strategy. Can be: "default" (uses mpn), "mpn_sku_mfr".
|
||||
The Cofactr search strategy. Can be: "mpn_sku_mfr" or "fuzzy" (uses mpn).
|
||||
Defaults to "mpn_sku_mfr". See Cofactr API documentation for more
|
||||
information on search strategies.
|
||||
default: mpn_sku_mfr
|
||||
|
@ -134,7 +134,7 @@ if __name__ == "__main__":
|
||||
)
|
||||
parser.add_argument(
|
||||
"--search-strategy",
|
||||
help="The Cofactr search strategy. Can be: default or mpn_sku_mfr. "
|
||||
help="The Cofactr search strategy. Can be: mpn_sku_mfr or fuzzy (uses mpn). "
|
||||
+ "Defaults to '%(default)s'. The API also supports mpn_exact and mpn_exact_mfr, "
|
||||
+ "but they are not recommended.",
|
||||
default="mpn_sku_mfr",
|
||||
@ -151,6 +151,10 @@ if __name__ == "__main__":
|
||||
part_number_column = args.bom_part_number_column
|
||||
manufacturer_column = args.bom_manufacturer_column
|
||||
quantity_column = args.bom_quantity_column
|
||||
search_strategy = args.search_strategy
|
||||
if search_strategy == "fuzzy":
|
||||
# Cofactr's default search strategy is designed for search results.
|
||||
search_strategy = "default"
|
||||
|
||||
with open(args.bom_file, "r") as bom_file:
|
||||
bom_csv = csv.DictReader(bom_file)
|
||||
@ -165,7 +169,7 @@ if __name__ == "__main__":
|
||||
prices_for_parts = {}
|
||||
|
||||
use_mfr = bool(manufacturer_column)
|
||||
if not use_mfr and query_needs_manufacturer(args.search_strategy):
|
||||
if not use_mfr and query_needs_manufacturer(search_strategy):
|
||||
raise ValueError(
|
||||
"Search strategy requires manufacturer, but no BOM manufacturer column was provided"
|
||||
)
|
||||
@ -173,7 +177,7 @@ if __name__ == "__main__":
|
||||
for part in parts:
|
||||
part_number = part[part_number_column]
|
||||
manufacturer = part[manufacturer_column] if use_mfr else ""
|
||||
prices = fetch_price_for_part(part_number, manufacturer, args.search_strategy)
|
||||
prices = fetch_price_for_part(part_number, manufacturer, search_strategy)
|
||||
if prices and len(prices) > 0:
|
||||
prices_for_parts[part_number] = prices
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user