PHPackages                             matteolore/recipe-scrapers - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. matteolore/recipe-scrapers

ActiveLibrairy[Parsing &amp; Serialization](/categories/parsing)

matteolore/recipe-scrapers
==========================

RecipeScrapers is a PHP library that allows you to scrape and extract recipe information from somes cooking websites.

11PHP

Since Oct 29Pushed 1y ago1 watchersCompare

[ Source](https://github.com/MatteoLore/RecipeScrapers)[ Packagist](https://packagist.org/packages/matteolore/recipe-scrapers)[ RSS](/packages/matteolore-recipe-scrapers/feed)WikiDiscussions main Synced 3d ago

READMEChangelogDependenciesVersions (1)Used By (0)

RecipeScrapers
==============

[](#recipescrapers)

RecipeScrapers is a PHP library that allows you to scrape and extract recipe information from somes cooking websites. It provides a simple and unified class to retrieve recipe details such as ingredients, instructions, cooking time, and more. This can be useful for building recipe apps, websites, or data analysis projects.

Installation
------------

[](#installation)

You can install RecipeScrapers using Composer:

```
composer require matteolore/recipe-scrapers
```

Usage
-----

[](#usage)

1. First, import `RecipeScrapers` class and create a scraper instance

```
use RecipeScrapers\RecipeScrapers;

$scrapers = new RecipeScrapers();
```

2. Then, call the `getRecipe` method, passing the url parameter, like this

```
$url = "https://www.example.com/recipe";
$recipe = $scrapers->getRecipe($url); // Returns a Recipe class if the url is correct
```

3. Finally, you can use the Recipe class to access all the available methods, such as `getName`, `getIngredient`, and [more](#methods-available)...

```
echo $recipe->getName(); // Returns the recipe name
echo $recipe->getIngredients();
```

Website available
-----------------

[](#website-available)

RecipeScrapers currently supports these cooking websites:

- [Marmiton](www.marmiton.org)
- [GialloZafferano](www.giallozafferano.it)
- [BlogGialloZafferano](blog.giallozafferano.it)
- [FattoInCasaDaBenedetta](www.fattoincasadabenedetta.it)

Methods available
-----------------

[](#methods-available)

The Recipe class provides a variety of methods to access different aspects of the scraped recipe data. Here are the available methods:

#### Recipe class:

[](#recipe-class)

- `getName` -&gt; Returns the recipe name.
- `getAuthor` -&gt; Returns the author of the recipe.
- `getDescription` -&gt; Returns the recipe description.
- `getKeyword` -&gt; Returns the keywords associated with the recipe.
- `getIngredients` -&gt; Returns an array of all ingredients.
- `getIngredient` -&gt; Returns a specific ingredient by its index.
- `getSteps` -&gt; Returns an array of all cooking steps.
- `getStep` -&gt; Returns a specific cooking step by its index.
- `getRecipeCuisine` -&gt; Returns the cuisine of the recipe.
- `getCategory` -&gt; Returns the category of the recipe.
- `getTotalTime` -&gt; Returns the total time required to prepare and cook the recipe.
- `getCookTime` -&gt; Returns the cooking time for the recipe.
- `getPrepTime` -&gt; Returns the preparation time for the recipe.
- `getPerformTime` -&gt; Returns the performance time for the recipe.
- `getYield` -&gt; Returns the yield of the recipe.
- `getRecipeYield` -&gt; Returns the recipe yield.
- `getImage` -&gt; Returns the URL of the recipe image.
- `getVideo` -&gt; Returns a VideoObject class.
- `getDateCreated` -&gt; Returns the creation date of the recipe.
- `getDateModified` -&gt; Returns the last modification date of the recipe.
- `getDatePublished` -&gt; Returns the publication date of the recipe.
- `getSuitableForDiet` -&gt; Returns information about dietary suitability.
- `getAggregaterating` -&gt; Returns a AggregateRating class.
- `getCookingMethod` -&gt; Returns the cooking method used in the recipe.
- `getEstimatedCost` -&gt; Returns the estimated cost of the recipe.
- `getNutrition` -&gt; Returns nutritional information about the recipe.
- `getTools` -&gt; Returns an array of tools required for cooking.
- `getTool` -&gt; Returns a specific tool by its index.
- `getSource` -&gt; Returns the source of the recipe.
- `getJson` -&gt; Returns the raw JSON data of the recipe.
- `getData` -&gt; Returns an array containing all the extracted recipe data.

#### VideoObject class:

[](#videoobject-class)

- `getName` -&gt; Returns the name of the video.
- `getDescription` -&gt; Returns the description of the video.
- `getThumbnailUrl` -&gt; Returns the URL of the video's thumbnail image.
- `getContentUrl` -&gt; Returns the URL of the video content.
- `getEmbedUrl` -&gt; Returns the embed URL for the video.

#### AggregateRating class:

[](#aggregaterating-class)

- `getRatingValue` -&gt; Returns the rating value.
- `getReviewCount` -&gt; Returns the total number of reviews.
- `getBestRating` -&gt; Returns the best possible rating.
- `getWorstRating` -&gt; Returns the worst possible rating.

License
-------

[](#license)

RecipeScrapers is distributed under the GNU General Public License v3.0. See [LICENSE](https://github.com/MatteoLore/RecipeScrapers/blob/main/LICENSE.md) for more information.

Happy cooking and coding!

###  Health Score

14

—

LowBetter than 1% of packages

Maintenance29

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity17

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/288379424?v=4)[MatteoLore](/maintainers/MatteoLore)[@matteolore](https://github.com/matteolore)

---

Top Contributors

[![MatteoPasselergue](https://avatars.githubusercontent.com/u/63706563?v=4)](https://github.com/MatteoPasselergue "MatteoPasselergue (44 commits)")

### Embed Badge

![Health badge](/badges/matteolore-recipe-scrapers/health.svg)

```
[![Health](https://phpackages.com/badges/matteolore-recipe-scrapers/health.svg)](https://phpackages.com/packages/matteolore-recipe-scrapers)
```

###  Alternatives

[mck89/peast

Peast is PHP library that generates AST for JavaScript code

19139.2M47](/packages/mck89-peast)[sauladam/shipment-tracker

Parses tracking information for several carriers, like UPS, USPS, DHL and GLS by simply scraping the data. No need for any kind of API access.

9843.5k](/packages/sauladam-shipment-tracker)[jstewmc/rtf

Read and write Rich Text Format (RTF) documents with PHP

45153.1k6](/packages/jstewmc-rtf)[tcds-io/php-jackson

A lightweight, flexible object serializer for PHP, inspired by FasterXML/jackson

113.2k10](/packages/tcds-io-php-jackson)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
