private static List <Recipe> GenerateRecipes(HtmlNode itemNode) { HtmlNodeCollection recipeNodes = itemNode.SelectNodes("td[position()>2]"); List <Recipe> recipes = new List <Recipe>(); foreach (HtmlNode recipeNode in recipeNodes) { Recipe recipe = new Recipe(); HtmlNodeCollection pickUpNodes = recipeNode.SelectNodes("descendant::td"); foreach (HtmlNode pickUpNode in pickUpNodes) { String pickUpId = Regex.Replace(pickUpNode. SelectSingleNode("a"). GetAttributeValue("title", ""), "^.*\\(", String.Empty); int pickUp = Int32.Parse(Regex.Replace(pickUpId, "\\)", String.Empty)); recipe.AddPickUp((PickUp)pickUp); } recipes.Add(recipe); } return(recipes); }