bar
Some checks are pending
Python lint and test / linttest (push) Waiting to run

This commit is contained in:
Piotr Domański 2026-04-02 11:59:07 +02:00
parent 8b25182645
commit 9792b0feb3

View file

@ -26,21 +26,22 @@ class Product:
def find(bar_code: str) -> Product:
url = f"https://world.openfoodfacts.org/api/v2/product/{bar_code}.json"
response = r.get(url)
response = r.get(url, headers={"User-Agent": "fooder/1.0"})
if response.status_code == 404:
raise NotFound()
try:
data = response.json()
product_data = data["product"]
name = data["product"]["product_name"]
name = product_data.get("product_name_pl") or product_data.get("product_name")
brands = data["product"].get("brands")
brands = product_data.get("brands")
if brands:
name = brands + " " + name
nutriments = data["product"]["nutriments"]
nutriments = product_data["nutriments"]
return Product(
name=name,
kcal=nutriments.get("energy-kcal_100g") or 0.0,