A website for the parsing of recipe pages into shopping lists
When the user inputs a URL to the recipes they want to use, this application retrieves the raw HTML from those sites, and looks for their ingredients.
For each link processed, a list of ingredients is created. The ingredients are processed with help from the hangry and ingreedy gems. After that, some simple processing occurs to try and normalize ingredient amounts, like converting cups to ounces. Site specific processing also occurs. For instance, FoodNetwork likes to put a comma after an ingredient and tell us what action needs to happen to it; like mincing or chopping.
Once all links have been processed, they are combined into a single list of ingredients. Ingredients that need to be combined have their units converted into base units, added together, and then brought back up into units that make sense.
The resulting shopping list contains links to the original recipes, for reference when cooking, and a newline separated list of ingredients that need to be acquired. This list can be used directly or copied into another program, like Google Keep, to be used as a checklist.