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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
einfach
+
+
+
+
+
+
+
+
+
+
+ 20Min
+
+
+
+
+
+
+
+
+
+
+
+ 15Min
+
+
+
+
+
+
+
+
+
Zutaten
+
+
+
+
Zubereitung
+
+
+
+
+
+
+
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.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Erinnerung für
+
+
+
+
+
+
+ Fehler!
+ Leider ist ein Fehler aufgetreten, bitte versuche es später erneut.
+
+
+
+
+
+
+
+
+
+
+
+
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