This time, the Pirates scored enough to win it.
Joe Musgrove cruised through seven innings and the Pirates snapped a five-game losing streak with a 3-1 victory on Saturday night.
Musgrove (5-7) allowed one run on five hits with seven strikeouts. He has gone seven innings and surrendered two runs or fewer in four of his past five starts.
"We've been throwing the ball really well," Musgrove said. "The starters have been giving us a chance to win. We got two really good performances in a row from (Ivan) Nova and Trevor (Williams), so you don't want to give up five or six runs and get rocked, and have that string of good performances end."
Pittsburgh won for the second time in eight games. The first-place Cubs had their three-game winning streak snapped after 1-0 victories in the first two games of the series.
Felipe Vazquez retired the side in order with two strikeouts in the ninth inning for his 27th save.
The Pirates' three runs came in the second inning, when Adam Frazier had an RBI double after Josh Bell and Francisco Cervelli walked to start the inning. That ended Pittsburgh's streak of 24 innings without a run scored.
Frazier's double off Tyler Chatwood (4-6) drove in Bell from second and gave the Pirates a 1-0 lead. A groundout from Colin Moran scored Cervelli before Adeiny Hechavarria hit a sacrifice fly to left field, allowing Frazier to score and make it 3-0.
"It wasn't a whole lot different than the last two nights. It really wasn't," Cubs manager Joe Maddon said. "We gave up three runs in one inning, otherwise you had yourself another 1-0 game. Bullpen was outstanding. Of course, Chatwood struggled. That was obvious. Offensively, we have to get it together on offense."
Musgrove got out of a jam with the Pirates leading 3-1 in the fifth inning. He allowed consecutive one-out singles by Wilson Contreras and Tommy La Stella, but with runners on the corners, Musgrove struck out Addison Russell and got Ben Zobrist to fly out to end the inning.
"He was very, very good," Pirates manager Clint Hurdle said. "His secondary pitches were top shelf, especially the changeup. The changeup was a swing-and-miss pitch. It was the separator. The fastball played to both sides. The curveball was good. He had command of four pitches."
Chatwood, who has walked 93 batters in 101 2/3 innings this season, lasted just two innings before being pulled after walking Corey Dickerson to lead off the third. He threw 37 pitches (21 strikes) and allowed the three runs on two hits with three walks.
"Just keep working. It's the only thing I can do," Chatwood said. "I'm fighting myself and I'm trying to beat another team. So, it feels like I'm fighting uphill. All you can do is keep trying to come back and regain the form I had in the past."
Before Chatwood exited, Zobrist homered to right field, cutting the Pirates' lead to 3-1 in the third.
Cubs: Zobrist replaced OF Ian Happ in the lineup. Happ entered as a pinch hitter in the seventh and reached first on an error by Frazier before taking over in center field in the bottom half of the inning. Happ had one of Chicago's six hits Friday, but struck out twice in four at-bats.
Pirates: After losing 1-0 for a second straight game Friday, Pittsburgh made two lineup adjustments, with Frazier replacing Josh Harrison at second base and Moran taking over for David Freese at third. Harrison, who had an error in the sixth inning, and Freese were a combined 1 for 7 Friday.
Cubs: LHP Jose Quintana (10-9, 4.46) will attempt to regain his form when he takes the mound for the series finale against the Pirates on Sunday. In his past four starts, Quintana has allowed at least five runs three times, including in each of his past two appearances.
Pirates: RHP Jameson Taillon (9-9, 3.66) will bring momentum from his recent starts when he faces the Cubs on Sunday. He has allowed three earned runs or fewer in 14 straight starts since surrendering six on eight hits in a 7-2 loss to the Cincinnati Reds on May 22.
More AP baseball: https://apnews.com/tag/MLBbaseball
More AP baseball: https://apnews.com/tag/MLBbaseball
Oakland's Fiers puts hot streak on line vs. Yanks
Right-hander Mike Fiers will attempt to extend his streak of unbeaten starts to 19 and the host Oakland Athletics will go for a second consecutive win over the New York Yankees when the clubs continue their three-game series Wednesday night.
Dodgers' Buehler hopes to rebound vs. Blue Jays
Walker Buehler will look to get a bad start out of his system when he takes the mound for the Los Angeles Dodgers on Wednesday in the middle game of a three-game interleague series against the visiting Toronto Blue Jays.
Cardinals chase sweep of Brewers
Head-to-head success against the Milwaukee Brewers is helping the St. Louis Cardinals in their playoff push.
Astros, Verlander aim for another win over Tigers
Astros manager A.J. Hinch can envision a fully healthy and weaponized Houston bullpen, one armed with options providing both the depth and versatility required to thrive in the postseason.
Castellanos a hit as Cubs take on Giants
In Nicholas Castellanos' world, every day is Opening Day.
Braves' Teheran looks to bounce back vs. Marlins
The Atlanta Braves will learn whether Julio Teheran has a short memory when they send the veteran right-hander to the mound to start against the visiting Miami Marlins on Wednesday.