From 44497a4e2e73d706dfa17e251fe1f321dc7ada9c Mon Sep 17 00:00:00 2001 From: Pebkac03 Date: Mon, 25 Mar 2024 15:26:58 +0100 Subject: [PATCH 1/3] added drinkoteket --- recipe_scrapers/__init__.py | 2 + recipe_scrapers/drinkoteket.py | 50 + .../test_data/drinkoteket.se/drinkoteket.json | 29 + .../drinkoteket.se/drinkoteket.testhtml | 1764 +++++++++++++++++ 4 files changed, 1845 insertions(+) create mode 100644 recipe_scrapers/drinkoteket.py create mode 100644 tests/test_data/drinkoteket.se/drinkoteket.json create mode 100644 tests/test_data/drinkoteket.se/drinkoteket.testhtml diff --git a/recipe_scrapers/__init__.py b/recipe_scrapers/__init__.py index e46161d23..5848a91e2 100644 --- a/recipe_scrapers/__init__.py +++ b/recipe_scrapers/__init__.py @@ -68,6 +68,7 @@ from .domesticateme import DomesticateMe from .downshiftology import Downshiftology from .dr import Dr +from .drinkoteket import Drinkoteket from .eatingbirdfood import EatingBirdFood from .eatingwell import EatingWell from .eatliverun import EatLiveRun @@ -366,6 +367,7 @@ Cybercook.host(): Cybercook, DavidLebovitz.host(): DavidLebovitz, Delish.host(): Delish, + Drinkoteket.host(): Drinkoteket, EatLiveRun.host(): EatLiveRun, ElaVegan.host(): ElaVegan, FitSlowCookerQueen.host(): FitSlowCookerQueen, diff --git a/recipe_scrapers/drinkoteket.py b/recipe_scrapers/drinkoteket.py new file mode 100644 index 000000000..d3cc50a93 --- /dev/null +++ b/recipe_scrapers/drinkoteket.py @@ -0,0 +1,50 @@ +# mypy: allow-untyped-defs + +from ._abstract import AbstractScraper + + +class Drinkoteket(AbstractScraper): + @classmethod + def host(cls): + return "drinkoteket.se" + + def author(self): + return self.schema.author() + + def title(self): + return self.schema.title() + + def category(self): + return self.schema.category() + + def total_time(self): + return self.schema.total_time() + + def yields(self): + return 1 + + def image(self): + return self.schema.image() + + def ingredients(self): + # return self.schema.ingredients() + _ingredients = ( + self.soup.find("ul", {"class": "ingredients"}).find_all("span").copy() + ) + return [ + " ".join([x.strip() for x in i.getText().split("\n") if x.strip() != ""]) + for i in _ingredients + if len(i) != 1 + ] + + def instructions(self): + return self.schema.instructions() + + def ratings(self): + return self.schema.ratings() + + def cuisine(self): + return self.schema.cuisine() + + def description(self): + return self.schema.description() diff --git a/tests/test_data/drinkoteket.se/drinkoteket.json b/tests/test_data/drinkoteket.se/drinkoteket.json new file mode 100644 index 000000000..7fee28f72 --- /dev/null +++ b/tests/test_data/drinkoteket.se/drinkoteket.json @@ -0,0 +1,29 @@ +{ + "author": "Drinkoteket", + "canonical_url": "https://drinkoteket.se/recept/margarita/", + "host": "drinkoteket.se", + "description": "Margarita är en klassisk drink och finns i en uppsjö av varianter. Det här är originalet. Ett vanligt misstag är att man väljer en tequila som man inte tycker om. Eftersom tequilan utgör 50% av drinken innebär det ofta att man inte heller gillar Margaritan man just har blandat. Prova dig därför fram för att hitta en tequila som du gillar.", + "image": "https://drinkoteket.se/wp-content/uploads/margarita-1-860x860.jpg", + "ingredients": [ + "4 cl Tequila", + "2 cl Apelsinlikör (Triple sec)", + "2 cl Limejuice" + ], + "instructions": "Förbered margarita-glaset genom att först sprida ut ett lager salt på ett fat.\nFukta glasets kanter med en limeklyfta.\nDoppa glaset i saltet så att det fastnar. Ett tips om du serverar drinken till någon annan än dig själv är att endast salta halva glaset så kan den som dricker Margaritan själv välja att dricka med eller utan salt.\nBlanda alla ingredienser i en shaker.\nFyll shakern med is och skaka.\nSila upp drinken i glaset.\nGarnera med en limeklyfta.\n\nOm man tycker att drinken blir för \"spetsig\" i sin smak, kan man tillsätta ca 0,5-1 cl sockerlag för att runda av och balansera smakerna. Som med alla drinkar handlar det i grund och botten om vad man själv gillar, så testa dig fram för att optimera receptet utifrån dina preferenser.\n\nHur gör du din Margarita?", + "instructions_list": [ + "Förbered margarita-glaset genom att först sprida ut ett lager salt på ett fat.", + "Fukta glasets kanter med en limeklyfta.", + "Doppa glaset i saltet så att det fastnar. Ett tips om du serverar drinken till någon annan än dig själv är att endast salta halva glaset så kan den som dricker Margaritan själv välja att dricka med eller utan salt.", + "Blanda alla ingredienser i en shaker.", + "Fyll shakern med is och skaka.", + "Sila upp drinken i glaset.", + "Garnera med en limeklyfta.", + "Om man tycker att drinken blir för \"spetsig\" i sin smak, kan man tillsätta ca 0,5-1 cl sockerlag för att runda av och balansera smakerna. Som med alla drinkar handlar det i grund och botten om vad man själv gillar, så testa dig fram för att optimera receptet utifrån dina preferenser.", + "Hur gör du din Margarita?" + ], + "language": "sv-SE", + "site_name": "Drinkoteket", + "title": "Margarita", + "total_time": 8, + "yields": 1 +} diff --git a/tests/test_data/drinkoteket.se/drinkoteket.testhtml b/tests/test_data/drinkoteket.se/drinkoteket.testhtml new file mode 100644 index 000000000..84b06005c --- /dev/null +++ b/tests/test_data/drinkoteket.se/drinkoteket.testhtml @@ -0,0 +1,1764 @@ + + + + + + + + + + + + + + + + + + + Margarita Recept - Goda drinkar online - Drinkoteket + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+
+

Margarita

+
+
+
+
+
+
+
+
+
+
+
+ + + +
+ +

Drinkar som liknar Margarita

+
+ +
+ +

Utforska kategorier

+
+ +
+

+ Kommentarer (6) +

+ +
+
    +
  • +
    + +
    +
    +
    + Mats + 20 augusti, 2017 at 15:34 + + + Svara + +
    +

    Klassiker. Kräver en riktig god tequila bara, annars blir det inte alls gott

    +
    +
    +
    +
    +
    +
    +
  • +
  • +
    + +
    +
    +
    + Erik + 10 april, 2021 at 15:57 + + + Svara + +
    +

    Rekommenderar Ocho blanco tequila. Supergod jämfört med den hemska sombrero-tequilan som finns på alla systembolag.

    +
    +
    +
    +
    +
    +
    +
  • +
  • +
    + +
    +
    +
    + Kakan + 10 april, 2021 at 16:01 + + + Svara + +
    +

    Jag testade tipset att ha lite sockerlag i och det blev toppen!

    +
    +
    +
    +
    +
    +
    +
  • +
  • +
    + +
    +
    +
    + Gabriella + 25 maj, 2021 at 09:10 + + + Svara + +
    +

    Som det sagts tidigare i kommentarerna –man behöver tycka om smaken av tequila för att uppskatta margaritas. Men när man gör det så är det en fenomenal drink!

    +
    +
    +
    +
    +
    +
    +
  • +
  • +
    + +
    +
    +
    + Olivia + 10 juni, 2021 at 13:11 + + + Svara + +
    +

    Toppenbra!

    +
    +
    +
    +
    +
    +
    +
  • +
  • +
    + +
    +
    +
    + Belle + 10 juni, 2021 at 13:12 + + + Svara + +
    +

    Älskar margaritas! 😍

    +
    +
    +
    +
    +
    +
    +
  • +
+
+

+ Lämna ett svar + + + +

+
+

+ E-postadressen publiceras inte. + Obligatoriska fält är märkta * +

+ +

+ + +

+

+ + +

+ +

+ + +

+

+ + + + + + + + + +

+
+

+ + + +

+

+ +

+

+ +

+
+
+
+
+ +
+ + + + +
+
+
+
+
+ + + + + + + + + + + + From a70e64f68f88624e12fd5214767a5dce9025eb17 Mon Sep 17 00:00:00 2001 From: Pebkac03 Date: Mon, 25 Mar 2024 19:19:35 +0100 Subject: [PATCH 2/3] fixed filtering out non ingredients --- recipe_scrapers/drinkoteket.py | 21 +- .../test_data/drinkoteket.se/drinkoteket.json | 10 + .../drinkoteket.se/drinkoteket.testhtml | 2797 ++++++----------- .../drinkoteket.se/drinkoteket_2.json | 37 + .../drinkoteket.se/drinkoteket_2.testhtml | 1038 ++++++ 5 files changed, 2143 insertions(+), 1760 deletions(-) create mode 100644 tests/test_data/drinkoteket.se/drinkoteket_2.json create mode 100644 tests/test_data/drinkoteket.se/drinkoteket_2.testhtml diff --git a/recipe_scrapers/drinkoteket.py b/recipe_scrapers/drinkoteket.py index d3cc50a93..0eea1a75e 100644 --- a/recipe_scrapers/drinkoteket.py +++ b/recipe_scrapers/drinkoteket.py @@ -27,15 +27,18 @@ def image(self): return self.schema.image() def ingredients(self): - # return self.schema.ingredients() - _ingredients = ( - self.soup.find("ul", {"class": "ingredients"}).find_all("span").copy() - ) - return [ - " ".join([x.strip() for x in i.getText().split("\n") if x.strip() != ""]) - for i in _ingredients - if len(i) != 1 - ] + ingredients_element = self.soup.find("ul", {"class": "ingredients"}) + + ingredients_separator = ingredients_element.find("li", {"class": "separator"}) + + if ingredients_separator is not None: + separator_index = ingredients_element.index(ingredients_separator) + raw_list = ingredients_element.findAll("span")[0::2][:separator_index] + else: + raw_list = ingredients_element.findAll("span")[0::2] + + ingredients = [i.getText().strip() for i in raw_list] + return ingredients def instructions(self): return self.schema.instructions() diff --git a/tests/test_data/drinkoteket.se/drinkoteket.json b/tests/test_data/drinkoteket.se/drinkoteket.json index 7fee28f72..30086b09a 100644 --- a/tests/test_data/drinkoteket.se/drinkoteket.json +++ b/tests/test_data/drinkoteket.se/drinkoteket.json @@ -9,6 +9,16 @@ "2 cl Apelsinlikör (Triple sec)", "2 cl Limejuice" ], + "ingredient_groups": [ + { + "ingredients": [ + "4 cl Tequila", + "2 cl Apelsinlikör (Triple sec)", + "2 cl Limejuice" + ], + "purpose": null + } + ], "instructions": "Förbered margarita-glaset genom att först sprida ut ett lager salt på ett fat.\nFukta glasets kanter med en limeklyfta.\nDoppa glaset i saltet så att det fastnar. Ett tips om du serverar drinken till någon annan än dig själv är att endast salta halva glaset så kan den som dricker Margaritan själv välja att dricka med eller utan salt.\nBlanda alla ingredienser i en shaker.\nFyll shakern med is och skaka.\nSila upp drinken i glaset.\nGarnera med en limeklyfta.\n\nOm man tycker att drinken blir för \"spetsig\" i sin smak, kan man tillsätta ca 0,5-1 cl sockerlag för att runda av och balansera smakerna. Som med alla drinkar handlar det i grund och botten om vad man själv gillar, så testa dig fram för att optimera receptet utifrån dina preferenser.\n\nHur gör du din Margarita?", "instructions_list": [ "Förbered margarita-glaset genom att först sprida ut ett lager salt på ett fat.", diff --git a/tests/test_data/drinkoteket.se/drinkoteket.testhtml b/tests/test_data/drinkoteket.se/drinkoteket.testhtml index 84b06005c..6e956cc86 100644 --- a/tests/test_data/drinkoteket.se/drinkoteket.testhtml +++ b/tests/test_data/drinkoteket.se/drinkoteket.testhtml @@ -1,1764 +1,1059 @@ - - - - - - - - - - - - - - - - - - - Margarita Recept - Goda drinkar online - Drinkoteket - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
-
-

Margarita

-
-
-
-
-
-
-
-
-
-
-
- - - -
- -

Drinkar som liknar Margarita

-
- -
- -

Utforska kategorier

+ + Margarita Recept - Goda drinkar online - Drinkoteket + + +
+Drinkar
Meny
+

Margarita

+Margarita Drink Recept

Margarita Recept

Margarita är en klassisk drink och finns i en uppsjö av varianter. Det här är originalet. Ett vanligt misstag är att man väljer en tequila som man inte tycker om. Eftersom tequilan utgör 50% av drinken innebär det ofta att man inte heller gillar Margaritan man just har blandat. Prova dig därför fram för att hitta en tequila som du gillar.

+

Ingredienser

+

Instruktioner

  1. Förbered margarita-glaset genom att först sprida ut ett lager salt på ett fat.
  2. Fukta glasets kanter med en limeklyfta.
  3. Doppa glaset i saltet så att det fastnar. Ett tips om du serverar drinken till någon annan än dig själv är att endast salta halva glaset så kan den som dricker Margaritan själv välja att dricka med eller utan salt.
  4. Blanda alla ingredienser i en shaker.
  5. Fyll shakern med is och skaka.
  6. Sila upp drinken i glaset.
  7. Garnera med en limeklyfta.

Om man tycker att drinken blir för "spetsig" i sin smak, kan man tillsätta ca 0,5-1 cl sockerlag för att runda av och balansera smakerna. Som med alla drinkar handlar det i grund och botten om vad man själv gillar, så testa dig fram för att optimera receptet utifrån dina preferenser.

Hur gör du din Margarita?

Glas, barverktyg & tillbehör

Produktlänkarna är affiliatelänkar vilket innebär att Drinkoteket får provision på köp som görs via länkarna.
+
+Om Drinkoteket

Drinkoteket har funnits sedan 2013 och hjälper hundratusentals besökare varje månad att hitta recept på goda drinkar och cocktails. Sajten drivs av Fredrik Ekland – drinkentusiast och marknadsförare. Det är Fredrik som testar alla recept samt fotograferar och publicerar drinkarna här på sajten.

Drink - -
-

- Kommentarer (6) -

- -
-
    -
  • -
    - -
    -
    -
    - Mats - 20 augusti, 2017 at 15:34 - - - Svara - -
    -

    Klassiker. Kräver en riktig god tequila bara, annars blir det inte alls gott

    -
    -
    -
    -
    -
    -
    -
  • -
  • -
    - -
    -
    -
    - Erik - 10 april, 2021 at 15:57 - - - Svara - -
    -

    Rekommenderar Ocho blanco tequila. Supergod jämfört med den hemska sombrero-tequilan som finns på alla systembolag.

    -
    -
    -
    -
    -
    -
    -
  • -
  • -
    - -
    -
    -
    - Kakan - 10 april, 2021 at 16:01 - - - Svara - -
    -

    Jag testade tipset att ha lite sockerlag i och det blev toppen!

    -
    -
    -
    -
    -
    -
    -
  • -
  • -
    - -
    -
    -
    - Gabriella - 25 maj, 2021 at 09:10 - - - Svara - -
    -

    Som det sagts tidigare i kommentarerna –man behöver tycka om smaken av tequila för att uppskatta margaritas. Men när man gör det så är det en fenomenal drink!

    -
    -
    -
    -
    -
    -
    -
  • -
  • -
    - -
    -
    -
    - Olivia - 10 juni, 2021 at 13:11 - - - Svara - -
    -

    Toppenbra!

    -
    -
    -
    -
    -
    -
    -
  • -
  • -
    - -
    -
    -
    - Belle - 10 juni, 2021 at 13:12 - - - Svara - -
    -

    Älskar margaritas! 😍

    -
    -
    -
    -
    -
    -
    -
  • -
-
-

- Lämna ett svar - - - -

-
-

- E-postadressen publiceras inte. - Obligatoriska fält är märkta * -

- -

- - -

-

- - -

- -

- - -

-

- - - - - - - - - -

-
-

- - - -

-

- -

-

- -

-
-
-
-
- -
- - - - -
-
-
-
-
-
+
+

Drinkar som liknar Margarita

Utforska kategorier

CocktailsKlassiska drinkar

Kommentarer (6)

  • +
    Mats 20 augusti, 2017 at 15:34 + Svara

    Klassiker. Kräver en riktig god tequila bara, annars blir det inte alls gott

  • +
    Erik 10 april, 2021 at 15:57 + Svara

    Rekommenderar Ocho blanco tequila. Supergod jämfört med den hemska sombrero-tequilan som finns på alla systembolag.

  • +
    Kakan 10 april, 2021 at 16:01 + Svara

    Jag testade tipset att ha lite sockerlag i och det blev toppen!

  • +
    Gabriella 25 maj, 2021 at 09:10 + Svara

    Som det sagts tidigare i kommentarerna – man behöver tycka om smaken av tequila för att uppskatta margaritas. Men när man gör det så är det en fenomenal drink!

  • +
    Olivia 10 juni, 2021 at 13:11 + Svara

    Toppenbra!

  • +
    Belle 10 juni, 2021 at 13:12 + Svara

    Älskar margaritas! 😍

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *

+
Recipe Rating + + + + + + + + + +
+ + + + + + + + + +
+ + + + + + + + + +
+ + + + + + + + + +
+ + + + + + + + + +
+ + + + + + + + +
+

+ + + +

+

Ansvarsfullt drickande

Alkohol kan skada din egen och andras hälsa och välbefinnande. Tänk på att dricka måttliga mängder, vid rätt tid, på rätt plats och av rätt orsaker.

Copyright © 2024 Drinkoteket - Recept på enkla & goda drinkar
- - - - - - - - - - + +Served from: drinkoteket.se @ 2024-03-25 17:57:09 by W3 Total Cache +--> \ No newline at end of file diff --git a/tests/test_data/drinkoteket.se/drinkoteket_2.json b/tests/test_data/drinkoteket.se/drinkoteket_2.json new file mode 100644 index 000000000..f08bdb406 --- /dev/null +++ b/tests/test_data/drinkoteket.se/drinkoteket_2.json @@ -0,0 +1,37 @@ +{ + "author": "Drinkoteket", + "canonical_url": "https://drinkoteket.se/recept/bahama-mama/", + "host": "drinkoteket.se", + "description": "Bahama Mama är en god, fruktig och exotisk drink.", + "image": "https://drinkoteket.se/wp-content/uploads/bahama-mama-1-860x860.jpg", + "ingredients": [ + "6 cl Kokoslikör", + "6 cl Ananasjuice", + "6 cl Apelsinjuice", + "1 cl Citronjuice", + "1 cl Grenadin" + ], + "ingredient_groups": [ + { + "ingredients": [ + "6 cl Kokoslikör", + "6 cl Ananasjuice", + "6 cl Apelsinjuice", + "1 cl Citronjuice", + "1 cl Grenadin" + ], + "purpose": null + } + ], + "instructions": "Häll ner alla ingredienser i en shaker.\nFyll upp shakern med is och skaka tills drinken blivit kall.\nSila upp din Bahama Mama i ett glas med krossad is och garnera med ananas och körsbär.", + "instructions_list": [ + "Häll ner alla ingredienser i en shaker.", + "Fyll upp shakern med is och skaka tills drinken blivit kall.", + "Sila upp din Bahama Mama i ett glas med krossad is och garnera med ananas och körsbär." + ], + "language": "sv-SE", + "site_name": "Drinkoteket", + "title": "Bahama Mama", + "total_time": 6, + "yields": 1 +} diff --git a/tests/test_data/drinkoteket.se/drinkoteket_2.testhtml b/tests/test_data/drinkoteket.se/drinkoteket_2.testhtml new file mode 100644 index 000000000..4872f2b09 --- /dev/null +++ b/tests/test_data/drinkoteket.se/drinkoteket_2.testhtml @@ -0,0 +1,1038 @@ + + Bahama Mama Drink - Recept på goda drinkar - Drinkoteket + + +
+Drinkar
Meny
+

Bahama Mama

+Bahama Mama Drink Recept

Bahama Mama Recept

Bahama Mama är en god, fruktig och exotisk drink.

+

Ingredienser

+

Instruktioner

  1. Häll ner alla ingredienser i en shaker.
  2. Fyll upp shakern med is och skaka tills drinken blivit kall.
  3. Sila upp din Bahama Mama i ett glas med krossad is och garnera med ananas och körsbär.

Glas, barverktyg & tillbehör

Produktlänkarna är affiliatelänkar vilket innebär att Drinkoteket får provision på köp som görs via länkarna.
+
+Om Drinkoteket

Drinkoteket har funnits sedan 2013 och hjälper hundratusentals besökare varje månad att hitta recept på goda drinkar och cocktails. Sajten drivs av Fredrik Ekland – drinkentusiast och marknadsförare. Det är Fredrik som testar alla recept samt fotograferar och publicerar drinkarna här på sajten.

Drink + + +
+
+
+

Drinkar som liknar Bahama Mama

Utforska kategorier

Kommentarer (2)

  • +
    Hanna 5 juli, 2017 at 12:59 + Svara

    Min favoritdrink!

    • +
      Ferenc 30 september, 2022 at 09:23 + Svara

      Går hem hos brudarna..😉

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *

+
Recipe Rating + + + + + + + + + +
+ + + + + + + + + +
+ + + + + + + + + +
+ + + + + + + + + +
+ + + + + + + + + +
+ + + + + + + + +
+

+ + + +

+

Ansvarsfullt drickande

Alkohol kan skada din egen och andras hälsa och välbefinnande. Tänk på att dricka måttliga mängder, vid rätt tid, på rätt plats och av rätt orsaker.

Copyright © 2024 Drinkoteket - Recept på enkla & goda drinkar
+ \ No newline at end of file From d6e9d5212f3cf4e71f0241953a53a734eaed61f0 Mon Sep 17 00:00:00 2001 From: Pebkac03 Date: Mon, 25 Mar 2024 19:25:46 +0100 Subject: [PATCH 3/3] updated readme --- README.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/README.rst b/README.rst index 2b2f0afa0..cc424e7e4 100644 --- a/README.rst +++ b/README.rst @@ -148,6 +148,7 @@ Scrapers available for: - `https://domesticate-me.com/ `_ - `https://downshiftology.com/ `_ - `https://www.dr.dk/ `_ +- `https://drinkoteket.se/ `_ - `https://www.eatingbirdfood.com/ `_ - `https://www.eatingwell.com/ `_ - `https://www.eatliverun.com/ `_