diff --git a/changedetectionio/html_tools.py b/changedetectionio/html_tools.py
index c917a719a..811bc08dc 100644
--- a/changedetectionio/html_tools.py
+++ b/changedetectionio/html_tools.py
@@ -397,22 +397,22 @@ def html_to_text(html_content: str, render_anchor_tag_content=False, is_rss=Fals
# Does LD+JSON exist with a @type=='product' and a .price set anywhere?
def has_ldjson_product_info(content):
- pricing_data = ''
-
try:
- if not 'application/ld+json' in content:
- return False
-
- for filter in LD_JSON_PRODUCT_OFFER_SELECTORS:
- pricing_data += extract_json_as_string(content=content,
- json_filter=filter,
- ensure_is_ldjson_info_type="product")
+ if 'application/ld+json' in content and content.count('"price"') == 1 and content.count('"priceCurrency"') == 1:
+ return True
+# On some pages this is really terribly expensive when they dont really need it
+# (For example you never want price monitoring, but this runs on every watch to suggest it)
+# for filter in LD_JSON_PRODUCT_OFFER_SELECTORS:
+# pricing_data += extract_json_as_string(content=content,
+# json_filter=filter,
+# ensure_is_ldjson_info_type="product")
except Exception as e:
- # Totally fine
+ # OK too
return False
- x=bool(pricing_data)
- return x
+
+ return False
+
def workarounds_for_obfuscations(content):