PHOENIX (AP) The Arizona Diamondbacks had been grinding their way through games, playing from behind for most of the week.
Patrick Corbin gave them a chance to play with a lead.
Corbin twice escaped jams in 6 2/3 scoreless innings, David Peralta hit an inside-the-park home run and the Diamondbacks beat the Cubs 6-2 on Saturday night, cutting Chicago's NL Central lead over St. Louis to a percentage point.
''Really impressive outing by Patrick on a night when we really needed a starting pitcher to step up,'' Diamondbacks manager Torey Lovullo said. ''He went as far as he could for as long as he could.''
Jon Lester (8-7) allowed four runs - three earned - and seven hits in six innings as the Cubs lost for the seventh time in 10 games.
Chicago led the division by 5 1/2 games before play on Aug. 2, but the Cardinals have closed with eight straight victories, their longest winning streak in two years.
''Jon Lester was outstanding,'' Cubs manager Joe Maddon said. ''He was pinpoint with everything. His stuff was great, absolutely deserved a better fate.''
Corbin (9-11) allowed five hits and struck out eight. He escaped trouble in the opening inning when Ian Happ hit an inning-ending groundout with runners at the corners.
Shortstop Ketel Marte threw out Javier Baez at the plate in the fifth on Ben Zobrist's grounder - a call upheld in a video review. Anthony Rizzo hit an inning-ending flyout with the bases loaded.
At Wrigley Field on Aug. 1, Corbin gave up eight runs in three innings. But he is 6-3 with a 3.14 ERA in 12 home starts this season.
''I felt pretty good warming up and I just wanted to go out there and try to pitch as deep as I could, give us a chance to win,'' Corbin said.
Kris Bryant hit a two-run single off Fernando Rodney in the ninth inning before David Hernandez threw a called third strike past Zobrist with two on for his second save this season.
Chicago was 2 for 9 with runners in scoring position and stranded 11 runners.
''I think we put together some good at-bats that last inning,'' Bryant said. ''You've got to score runs to win and we didn't do that until the end.''
J.D. Martinez put the Diamondbacks ahead in a four-run sixth with an RBI double off the wall in right. Baez sailed a relay throw from shortstop to the plate for an error that allowed in another run, and Brandon Drury lined a two-run double off the center-field wall.
Peralta hit Arizona's second inside-the-park homer of the season in the eighth inning off Justin Grimm, a drive that took a strange bounce off the left-center wall.
''I was out of gas,'' Peralta said. ''I didn't slide a home. I just laid myself down.''
Chicago had a rally going in the ninth inning, only to have it end on a called final strike the Cubs thought was low. Maddon argued with plate umpire Mark Wegner after the game.
''He gets on and the next one is the tying run. I just wanted to see that happen,'' Maddon said. ''We got Rodney out after 20 something pitches, (Andrew) Chaffin was warming up for the second time. All good stuff for us and then it goes away on that call. We all make mistakes. To end the game like that is very difficult to watch.''
Diamondbacks: LHP Robbie Ray threw a simulated game without any problems as he makes his way back from a concussion. He was hit on the head by a line drive late last month and his next step could be a rehab start.
RHP Jake Arrieta (11-8) starts Sunday's series finale for the Cubs and is 4-2 with a 2.18 ERA in seven starts since July 2. RHP Zack Godley (5-4) starts for the Diamondbacks. He is 2-0 with a 1.37 ERA over his last three starts.
More AP baseball: https://apnews.com/tag/MLBbaseball
Copyright 2017 by STATS. Any commercial use or distribution without the express written consent of STATS is strictly prohibited.