diff --git a/README.rst b/README.rst index a403fd8eb..bcb1ad8cd 100644 --- a/README.rst +++ b/README.rst @@ -88,6 +88,8 @@ Scrapers available for: - `https://aflavorjournal.com/ `_ - `https://ah.nl/ `_ - `https://akispetretzikis.com/ `_ +- `https://aldi-nord.de/ `_ + - `.es `__, `.fr `__, `.lu `__, `.nl `__, `.pl `__, `.pt `__ - `https://aldi-sued.de/ `_ - `.hu `__, `.it `__ - `https://aldi-suisse.ch `_ diff --git a/recipe_scrapers/__init__.py b/recipe_scrapers/__init__.py index 1669939d5..ea538b3e8 100644 --- a/recipe_scrapers/__init__.py +++ b/recipe_scrapers/__init__.py @@ -44,6 +44,7 @@ from .akispetretzikis import AkisPetretzikis from .albertheijn import AlbertHeijn from .aldi import Aldi +from .aldinord import AldiNord from .aldisued import AldiSued from .aldisuisse import AldiSuisse from .alexandracooks import AlexandraCooks @@ -426,6 +427,13 @@ AkisPetretzikis.host(): AkisPetretzikis, AlbertHeijn.host(): AlbertHeijn, Aldi.host(): Aldi, + AldiNord.host(): AldiNord, + AldiNord.host(domain="aldi.es"): AldiNord, + AldiNord.host(domain="aldi.fr"): AldiNord, + AldiNord.host(domain="aldi.lu"): AldiNord, + AldiNord.host(domain="aldi.nl"): AldiNord, + AldiNord.host(domain="aldi.pl"): AldiNord, + AldiNord.host(domain="aldi.pt"): AldiNord, AldiSued.host(): AldiSued, AldiSued.host(domain="aldi.hu"): AldiSued, AldiSued.host(domain="aldi.it"): AldiSued, diff --git a/recipe_scrapers/aldinord.py b/recipe_scrapers/aldinord.py new file mode 100644 index 000000000..d4b9aa5ae --- /dev/null +++ b/recipe_scrapers/aldinord.py @@ -0,0 +1,24 @@ +from ._abstract import AbstractScraper +from ._exceptions import StaticValueException + + +class AldiNord(AbstractScraper): + @classmethod + def host(cls, domain: str = "aldi-nord.de"): + return domain + + def author(self): + if author_from_schema := self.schema.author(): + return author_from_schema + + raise StaticValueException(return_value="ALDI") + + def site_name(self): + raise StaticValueException(return_value="ALDI") + + def instructions(self): + return ( + self.schema.data.get("recipeInstructions", "") + .replace("\xa0", " ") + .replace("\r\n ", "\n") + ) diff --git a/tests/test_data/aldi-nord.de/aldinord.json b/tests/test_data/aldi-nord.de/aldinord.json new file mode 100644 index 000000000..d62a73f10 --- /dev/null +++ b/tests/test_data/aldi-nord.de/aldinord.json @@ -0,0 +1,36 @@ +{ + "author": "ALDI", + "canonical_url": "https://www.aldi-nord.de/rezepte/kategorien/desserts/veganer-kaiserschmarrn-mit-gebratenen-zimt-aepfeln.html", + "site_name": "ALDI", + "host": "aldi-nord.de", + "language": "de", + "title": "Veganer Kaiserschmarrn mit gebratenen Zimt-Äpfeln", + "ingredients": [ + "150 ml MY VAY Mandeldrink", + "50 ml QUELLBRUNN Mineralwasser Classic mit Kohlensäure", + "1 EL Zitronensaft", + "1 EL BELLASAN Rapsöl", + "100 g BACK FAMILY Weizenmehl Type 405", + "1 EL BACK FAMILY gemahlene Mandeln", + "1 EL DIADEM Raffinade-Zucker", + "8 g BACK FAMILY Backpulver", + "8 g BACK FAMILY Vanillinzucker", + "20 g BACK FAMILY Pudding Vanille-Geschmack", + "1 EL BELLASAN Sonnenblumen-Margarine zum Braten", + "DIADEM Puderzucker", + "1 großer Apfel (oder 2 kleine Äpfel)", + "1 TL Kokosöl", + "Schuss GUT BIO Agavendicksaft", + "½ TL LE GUSTO Zimt", + "½ TL DIADEM Raffinade-Zucker" + ], + "instructions_list": [ + "Mandeldrink, Sprudelwasser, Zitronensaft und Öl verrühren. In einer Rührschüssel Mehl, Mandeln, Zucker, Backpulver, Vanillinzucker und Puddingpulver vermischen. Flüssige Zutaten hineingießen und nur kurz zu einem Teig verrühren. Dann 10 Minuten ruhen lassen.", + "Margarine in einer Pfanne schmelzen. Teig in die Pfanne gießen und bei geschlossenem Deckel und mittlerer Hitze etwa 8 Minuten braten.", + "Teig vierteln, wenden und weitere 5 Minuten bei geschlossenem Deckel braten. Danach vorsichtig zerrupfen. ", + "Äpfel schälen, entkernen und kleinschneiden. Kokosöl in einer Pfanne schmelzen. Apfelstückchen in die Pfanne geben und mit einem Schuss Agavendicksaft und Zimt-Zucker einige Minuten bei mittlerer Hitze anbraten, bis der Apfel weich und karamellisiert ist. Gebratenen Apfel zum Kaiserschmarrn geben und alles mit Puderzucker bestäuben. " + ], + "yields": "2 servings", + "total_time": 35, + "image": "https://www.aldi-nord.de/content/dam/aldi/germany/rezepte/2024/ato/kw45/AN_Rezepte_KW49_Kaiserschmarrn_Stage_3840x1200.jpg/_jcr_content/renditions/original.transform/1817w/img.241101.jpg" +} diff --git a/tests/test_data/aldi-nord.de/aldinord.testhtml b/tests/test_data/aldi-nord.de/aldinord.testhtml new file mode 100644 index 000000000..ed996ff3d --- /dev/null +++ b/tests/test_data/aldi-nord.de/aldinord.testhtml @@ -0,0 +1,1456 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Veganer Kaiserschmarrn mit gebratenen Zimt-Äpfeln﹣Rezepte von ALDI Nord + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
+
    +
  1. + + + Startseite + +
  2. + +
  3. + + + Rezepte + +
  4. + +
  5. + + + Kategorien + +
  6. + +
  7. + + + Desserts + +
  8. + +
  9. + + + Veganer Kaiserschmarrn mit gebratenen Zimt-Äpfeln + +
  10. +
+
+ +
+ +
+
+
+
+
+

Veganer Kaiserschmarrn mit gebratenen Zimt-Äpfeln

+ +
+ +
+
+
+ + + +Veganer Kaiserschmarrn mit gebratenen Zimt-Äpfeln﹣Rezepte von ALDI Nord + + + +
+
+
+ +
+
+
+
+ +
+
+
+ + + +
+

einfach

+
+
+
+ +
+

+ + + 20Min +

+
+
+
+ +
+

+ + + 15Min +

+
+
+ + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
2 Portionen
150 mlMY VAY Mandeldrink
50 mlQUELLBRUNN Mineralwasser Classic mit Kohlensäure
1 ELZitronensaft
1 ELBELLASAN Rapsöl
100 g BACK FAMILY Weizenmehl Type 405
1 ELBACK FAMILY gemahlene Mandeln
1 EL DIADEM Raffinade-Zucker
8 g BACK FAMILY Backpulver
8 g BACK FAMILY Vanillinzucker
20 g BACK FAMILY Pudding Vanille-Geschmack
1 EL BELLASAN Sonnenblumen-Margarine zum Braten
DIADEM Puderzucker
Zimt-Äpfel
1 großer Apfel (oder 2 kleine Äpfel)
1 TLKokosöl
Schuss GUT BIO Agavendicksaft
½ TLLE GUSTO Zimt
½ TLDIADEM Raffinade-Zucker
+ +
+ + + Per E-Mail versenden + + +
+ + + + +
+ + + +
+ + + + +
+

Schritt 1

+

Mandeldrink, Sprudelwasser, Zitronensaft und Öl verrühren. In einer Rührschüssel Mehl, Mandeln, Zucker, Backpulver, Vanillinzucker und Puddingpulver vermischen. Flüssige Zutaten hineingießen und nur kurz zu einem Teig verrühren. Dann 10 Minuten ruhen lassen.

+
+
+ + + + +
+

Schritt 2

+

Margarine in einer Pfanne schmelzen. Teig in die Pfanne gießen und bei geschlossenem Deckel und mittlerer Hitze etwa 8 Minuten braten.

+
+
+ + + + +
+

Schritt 3

+

Teig vierteln, wenden und weitere 5 Minuten bei geschlossenem Deckel braten. Danach vorsichtig zerrupfen. 

+
+
+ + + + +
+

Schritt 4

+

Äpfel schälen, entkernen und kleinschneiden. Kokosöl in einer Pfanne schmelzen. Apfelstückchen in die Pfanne geben und mit einem Schuss Agavendicksaft und Zimt-Zucker einige Minuten bei mittlerer Hitze anbraten, bis der Apfel weich und karamellisiert ist. Gebratenen Apfel zum Kaiserschmarrn geben und alles mit Puderzucker bestäuben.  

+
+
+ + + +
+ + + Per E-Mail versenden + + +
+
+ +
+
+ +
+
+
+
+ +
+ + +
+
+ + +
+
+ + +
+ + + +
+ + + + + +
+ + + +
+ + + + + + + + +
+
+ Erinnerung für +
+
+ +
+ Fehler! + Leider ist ein Fehler aufgetreten, bitte versuche es später erneut. +
+
+
+
+
+ +
+
+

Welche E-Mail-Adresse sollen wir verwenden, um dich über die Verfügbarkeit deines Wunsch-Produktes zu informieren?

+
+ + + +
+

Datumsauswahl

+
+ +
+
+
+
+
Tag der Erinnerung
+
+
Zwei Tage vorher
+
Einen Tag vorher
+
Am Angebotstag
+
+ +
+
+
Uhrzeit
+ +
+
00:00
+
01:00
+
02:00
+
03:00
+
04:00
+
05:00
+
06:00
+
07:00
+
08:00
+
09:00
+
10:00
+
11:00
+
12:00
+
13:00
+
14:00
+
15:00
+
16:00
+
17:00
+
18:00
+
19:00
+
20:00
+
21:00
+
22:00
+
23:00
+
+ +
+
+
+
+
+
+ + + + + +
+ +
+
+
+ +
+ +
Hinweise
+
+
    +
  • Um unseren kostenlosen Erinnerungsservice nutzen zu können, musst du dich bei erstmaliger Nutzung authentifizieren. Bitte beachte hierfür den folgenden Ablauf: Gib bitte deine E-Mail-Adresse ein und klicke auf "Erinnerung aktivieren". Du erhältst nach wenigen Minuten einen Aktivierungslink. Diesen Link rufst du im nächsten Schritt auf und aktivierst somit den Erinnerungsservice. Für jede weitere Nutzung ist keine weitere Authentifizierung mehr nötig. +
  • Um dieses Formular übermitteln zu können, musst du in den Sicherheitseinstellungen deines Browsers die Annahme von Cookies aktivieren. +
  • Die Erinnerung kann nur versendet werden, wenn der gewählte Termin in der Zukunft liegt und du deine E-Mail-Adresse erfolgreich authentifiziert hast. +
  • Mit deiner Einwilligung erfassen wir deine E-Mail-Adresse für den Versand der Erinnerung sowie zu Authentifizierungszwecken für zukünftige Erinnerungen im Rahmen des Erinnerungsservices. Die Abmeldung/das Löschen deiner Daten ist jederzeit möglich, indem du dich an unseren Kundenservice über das Kontaktformular wendest: Kontakt/a> Bitte beachte, dass die Aktivierung des Erinnerungsservices nur dann zulässig ist, wenn du selbst der Empfänger bist.
  • +
+
+ + + + + + + + + + +
+
+
+
+ +
+

Dieser Artikel ist bereits im Markt erhältlich.

+

Die Erinnerungsfunktion wurde daher deaktiviert.

+
+
+ +

Erinnerung aktiv!

+

Nur noch ein Schritt!

+

Du erhältst deine Erinnerung am ${date} um ${time} Uhr.

+

Bitte bestätige deine E-Mail-Adresse.

+

Wir haben einen Bestätigungslink an deine E-Mail-Adresse geschickt. Klick auf den Bestätigungslink und aktiviere damit deinen Erinnerungsservice. 
+E-Mail nicht erhalten? Bitte schau in deinem Spam-Ordner nach.

+
+
+
+ + + + +
+

regions.regionSwitchHeadline

+
regions.regionSwitchText
+
regions.regionSwitchTextExplicitSwitch
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file