removed old json importer

This commit is contained in:
smilerz 2021-04-01 16:21:28 -05:00
parent 2ea3e4f8f3
commit e5984abd97

View File

@ -13,92 +13,70 @@ from django.utils.translation import gettext as _
from recipe_scrapers._utils import get_minutes, normalize_string from recipe_scrapers._utils import get_minutes, normalize_string
def find_recipe_json(ld_json, url, space): # def find_recipe_json(ld_json, url, space):
ld_json['name'] = parse_name(ld_json['name']) # ld_json['name'] = parse_name(ld_json['name'])
except AttributeError: # # some sites use ingredients instead of recipeIngredients
description = '' # if 'recipeIngredient' not in ld_json and 'ingredients' in ld_json:
# ld_json['recipeIngredient'] = ld_json['ingredients']
if 'recipeIngredient' in ld_json: # if 'recipeIngredient' in ld_json:
ld_json['recipeIngredient'] = parse_ingredients(ld_json['recipeIngredient']) # ld_json['recipeIngredient'] = parse_ingredients(ld_json['recipeIngredient'])
else: # else:
ld_json['recipeIngredient'] = "" # ld_json['recipeIngredient'] = ""
try: # keywords = []
servings = scrape.yields() # if 'keywords' in ld_json:
servings = int(re.findall(r'\b\d+\b', servings)[0]) # keywords += listify_keywords(ld_json['keywords'])
except (AttributeError, ValueError, IndexError): # if 'recipeCategory' in ld_json:
servings = 1 # keywords += listify_keywords(ld_json['recipeCategory'])
recipe_json['servings'] = servings # if 'recipeCuisine' in ld_json:
# keywords += listify_keywords(ld_json['recipeCuisine'])
# try:
# ld_json['keywords'] = parse_keywords(list(set(map(str.casefold, keywords))), space)
# except TypeError:
# pass
try: # if 'recipeInstructions' in ld_json:
recipe_json['prepTime'] = get_minutes(scrape.schema.data.get("prepTime")) or 0 # ld_json['recipeInstructions'] = parse_instructions(ld_json['recipeInstructions'])
except AttributeError: # else:
recipe_json['prepTime'] = 0 # ld_json['recipeInstructions'] = ""
try:
recipe_json['cookTime'] = get_minutes(scrape.schema.data.get("cookTime")) or 0
except AttributeError:
recipe_json['cookTime'] = 0
if recipe_json['cookTime'] + recipe_json['prepTime'] == 0:
try:
recipe_json['prepTime'] = get_minutes(scrape.total_time()) or 0
except AttributeError:
pass
keywords = []
if 'keywords' in ld_json:
keywords += listify_keywords(ld_json['keywords'])
if 'recipeCategory' in ld_json:
keywords += listify_keywords(ld_json['recipeCategory'])
if 'recipeCuisine' in ld_json:
keywords += listify_keywords(ld_json['recipeCuisine'])
try:
ld_json['keywords'] = parse_keywords(list(set(map(str.casefold, keywords))), space)
except TypeError:
pass
if 'recipeInstructions' in ld_json: # if 'image' in ld_json:
ld_json['recipeInstructions'] = parse_instructions(ld_json['recipeInstructions']) # ld_json['image'] = parse_image(ld_json['image'])
else: # else:
ld_json['recipeInstructions'] = "" # ld_json['image'] = ""
if url: # if 'description' in ld_json:
ld_json['recipeInstructions'] += "\nImported from " + url # ld_json['description'] = normalize_string(ld_json['description'])
# else:
# ld_json['description'] = ""
if 'image' in ld_json: # if 'cookTime' in ld_json:
ld_json['image'] = parse_image(ld_json['image']) # ld_json['cookTime'] = parse_cooktime(ld_json['cookTime'])
else: # else:
ld_json['image'] = "" # ld_json['cookTime'] = 0
if 'description' in ld_json: # if 'prepTime' in ld_json:
ld_json['description'] = normalize_string(ld_json['description']) # ld_json['prepTime'] = parse_cooktime(ld_json['prepTime'])
else: # else:
ld_json['description'] = "" # ld_json['prepTime'] = 0
if 'cookTime' in ld_json: # if 'servings' in ld_json:
ld_json['cookTime'] = parse_cooktime(ld_json['cookTime']) # ld_json['servings'] = parse_servings(ld_json['servings'])
else: # elif 'recipeYield' in ld_json:
ld_json['cookTime'] = 0 # ld_json['servings'] = parse_servings(ld_json['recipeYield'])
# else:
# ld_json['servings'] = 1
if 'prepTime' in ld_json: # for key in list(ld_json):
ld_json['prepTime'] = parse_cooktime(ld_json['prepTime']) # if key not in [
else: # 'prepTime', 'cookTime', 'image', 'recipeInstructions',
ld_json['prepTime'] = 0 # 'keywords', 'name', 'recipeIngredient', 'servings', 'description'
# ]:
# ld_json.pop(key, None)
if 'servings' in ld_json: # return ld_json
ld_json['servings'] = parse_servings(ld_json['servings'])
elif 'recipeYield' in ld_json:
ld_json['servings'] = parse_servings(ld_json['recipeYield'])
else:
ld_json['servings'] = 1
for key in list(ld_json):
if key not in [
'prepTime', 'cookTime', 'image', 'recipeInstructions',
'keywords', 'name', 'recipeIngredient', 'servings', 'description'
]:
ld_json.pop(key, None)
return ld_json
def get_from_scraper(scrape, space): def get_from_scraper(scrape, space):