PITTSBURGH -- Anthony Rizzo hasn't had a whole lot of reason to feel good about himself this season, particularly in the second half.
However, the first baseman had a shining moment Friday night as his two-run home run in the seventh inning rallied the Chicago Cubs to a 5-4 victory over the Pittsburgh Pirates at PNC Park.
The Pirates entered the day tied for first place in the National League Central with the St. Louis Cardinals, who hosted Seattle on Friday night.
Rizzo connected off Jason Grilli to turn a one-run deficit into a one-run lead as the Cubs snapped the Pirates' four-game winning streak. Rizzo had just one hit in his previous 21 at-bats and was hitting .202 since the All-Star break when he belted his 22nd home run of the season into the right-field stands with two outs.
Grilli (0-2) has converted 30 of 31 save opportunities this season but has been working in set-up relief since coming off the disabled list Sept. 3 after missing six weeks with a right forearm strain. Grilli struck out the first two batters in the seventh but then walked Luis Valbuena before Rizzo homered.
The Pirates had taken a 4-3 lead in the sixth when Andrew McCutchen led off with a double and scored on an error by starting pitcher Jake Arrieta, who dropped the feed from Rizzo on a ground ball by Pedro Alvarez.
In the fourth, the Pirates hit three consecutive home runs for the first time in 10 years as Alvarez, Russell Martin and Garrett Jones connected with two outs off Arrieta.
Brian Bogusevic had three hits, including a two-run home run for the Cubs. Rizzo and Dioner Navarro added two hits each.
Carlos Villanueva (6-8), who got the last out in the sixth inning, was the winning pitcher. Kevin Gregg pitched a scoreless ninth for his 32nd save in 37 opportunities, getting Neil Walker to fly out to the warning track in center field with a runner on first base to end the game.
McCutchen, who extended his hitting streak to 11 games, had two hits for Pittsburgh along with Jose Tabata and Alvarez.
Both starters lasted five innings. Arrieta allowed four runs -- three earned -- and six hits while the Pirates' Charlie Morton gave up three runs and four hits.
Pittsburgh hit its back-to-back-back home runs with two outs in the fourth inning to tie the score at 3-3.
Alvarez started the barrage when he hit an inside-the-park homer, the first of his career. The ball bounced high off the fence in right-center, over the outstretched glove of center fielder Mark Sweeney.
It was Alvarez's 33rd homer of the season, the most in the National League, and the first inside-the-park homer by a Pirates player since Alex Presley hit one on April 20, 2012.
Martin followed with a drive into the left-field bleachers, and then Jones hit a blast to center field. It was the 14th home run of the season for both and marked the first time the Pirates hit three homers in a row since Aug. 20, 2003, at St. Louis when Jason Kendall, Brian Giles and Reggie Sanders went deep.
The Pirates last hit three consecutive home runs in Pittsburgh on July 6, 1955, in the first game of a doubleheader against the Brooklyn Dodgers. Jerry Lynch, Frank Thomas and Dale Long connected at Forbes Field.
Chicago opened the scoring in the second on Darwin Barney's fielder's choice grounder.
NOTES: Pittsburgh RF Marlon Byrd was rested after starting each of the first 15 games since being acquired Aug. 27 in a trade with the New York Mets. ... Chicago LF Junior Lake was not in the starting lineup despite having a nine-game hitting streak, as manager Dale Sveum wanted to give a start to Bogusevic. ... Morton, who entered the game with a .143 batting average, had an 11-pitch plate appearance against Arrieta in the third inning. Justin Morneau had a 12-pitch at-bat in the fourth, but both ended up bouncing out to the pitcher. ... Cubs RHP Scott Baker (0-0, 0.00) will face Pirates RHP Gerrit Cole (7-7, 3.48) on Saturday night in the third game of the four-game series.