/recipe-scrapers

Python package for scraping recipes data

Primary LanguagePythonMIT LicenseMIT

Recipe scrapers

Build Status Coverage Status

A simple web scraping tool for recipe sites I use in a project of mine that makes sense to live as a separate package. No Python 2 support.

pip install git+git://github.com/hhursev/recipe-scrapers.git

then:

from recipe_scrapers import scrape_me

# give the url as a string, it can be url from any site listed below
scraper = scrape_me('http://allrecipes.com/Recipe/Apple-Cake-Iv/Detail.aspx')

scraper.title()
scraper.total_time()
scraper.ingredients()
scraper.instructions()
scraper.links()

Note: scraper.links() returns a dictionary object containing all of the tag attributes. The attribute names are the dictionary keys.

Contribute

Part of the reason I want this open sourced is because if a site makes a design change, the scraper for it should be modified.

If you spot a design change (or something else) that makes the scrapers unable to work for the given site - please fire an issue asap.

If you are programmer PRs with fixes are warmly welcomed and acknowledged with a virtual beer :beer:.

Scrapers available for:

If you want a scraper for a new site added

  • Open an Issue providing us the site name, as well as a recipe link from it.
  • If you are a developer and want to code the scraper on your own, this is a wonderful example of how to do it.

For Devs

Assuming you have virtualenv and virtualenvwrapper installed, navigate to the directory where you want this project to live in and drop these lines

git clone git@github.com:hhursev/recipe-scrapers.git &&
cd recipe-scrapers &&
mkvirtualenv -a `pwd` -p python3 -r requirements.txt recipe-scrapers &&
coverage run tests.py &&
coverage report

For a full setup and project check.