feat: Create Recipe From HTML or JSON (#4274)

Co-authored-by: Kuchenpirat <24235032+Kuchenpirat@users.noreply.github.com>
This commit is contained in:
Michael Genson
2024-09-30 10:52:13 -05:00
committed by GitHub
parent edf420491f
commit 4c1d855690
23 changed files with 408 additions and 115 deletions

View File

@@ -71,7 +71,7 @@ from .recipe_ingredient import (
)
from .recipe_notes import RecipeNote
from .recipe_nutrition import Nutrition
from .recipe_scraper import ScrapeRecipe, ScrapeRecipeTest
from .recipe_scraper import ScrapeRecipe, ScrapeRecipeBase, ScrapeRecipeData, ScrapeRecipeTest
from .recipe_settings import RecipeSettings
from .recipe_share_token import RecipeShareToken, RecipeShareTokenCreate, RecipeShareTokenSave, RecipeShareTokenSummary
from .recipe_step import IngredientReferences, RecipeStep
@@ -157,6 +157,8 @@ __all__ = [
"RecipeTool",
"RecipeToolPagination",
"ScrapeRecipe",
"ScrapeRecipeBase",
"ScrapeRecipeData",
"ScrapeRecipeTest",
"AssignCategories",
"AssignSettings",

View File

@@ -8,9 +8,12 @@ class ScrapeRecipeTest(MealieModel):
use_openai: bool = Field(False, alias="useOpenAI")
class ScrapeRecipe(MealieModel):
url: str
class ScrapeRecipeBase(MealieModel):
include_tags: bool = False
class ScrapeRecipe(ScrapeRecipeBase):
url: str
model_config = ConfigDict(
json_schema_extra={
"example": {
@@ -19,3 +22,8 @@ class ScrapeRecipe(MealieModel):
},
}
)
class ScrapeRecipeData(ScrapeRecipeBase):
data: str
"""HTML data or JSON string of a https://schema.org/Recipe object"""