Pedro Alvarez hit a three-run homer and the Pirates cruised to a 9-2 win over the Cardinals at PNC Park. Francisco Liriano struck out eight in seven innings of one-run ball to improve to 11-and-4 for Pittsburgh. The Bucs had dropped three out of four coming in. Jake Westbrook allowed four runs in five innings to fall to 7-and-5 for St. Louis. Matt Carpenter and Shane Robinson each singled in a run for the Cards, who have lost four straight since a four-game winning streak.