SAN FRANCISCO (AP) In a three-day span, Thairo Estrada hit a game-ending two-run homer against the Pirates and a triple that sparked another ninth-inning rally.
Brandon Crawford connected for a two-run walkoff homer against Ian Kennedy moments after Estrada's two-out triple, and the San Francisco Giants came back to beat the Arizona Diamondbacks 2-1 on Tuesday night for their fifth straight win and eighth in 10 games.
''Of course there was an opportunity. Until the last out, there's always a chance,'' Estrada said. ''... The last two times up I've been able to deliver.''
The Giants came back against Arizona's bullpen after D-backs ace Merrill Kelly outdueled Jakob Junis.
Christian Walker homered leading off the fourth inning for the game's lone run until the final swing by Crawford for his sixth homer.
''With how the season's gone, with the ups and downs, it's nice to have some fun, exciting wins,'' said Crawford, whose kids were jumping up and down in their pajamas at home in a video shared by his wife, Jalynne.
Kelly struck out seven with two walks and four hits over seven innings and was on pace to continue his recent dominance against the Giants.
Before the last-inning drama, the Giants had their best chance in the seventh when Evan Longoria led off with a double and advanced on Estrada's sacrifice bunt. Crawford walked, then Joey Bart flied out.
Joe Mantiply pitched the eighth for Arizona, which is now 2-19 in San Francisco's waterfront ballpark since Giants manager Gabe Kapler took over ahead of the virus-shortened 2020 season. Wilmer Flores hit a two-out double, but the Giants again couldn't convert.
Kennedy (4-6) bent over in frustration as Crawford's ball sailed out. Arizona manager Torey Lovullo argued that Estrada had taken strike three because plate umpire Cory Blaser moved backward.
''It's not over until it's over. Everybody knows what happened. It's frustrating,'' Lovullo said. ''We're still working through it right now to be honest with you. But we'll figure out what happened, digest it and move on.''
Junis struck out seven - one off his season high - and Walker's homer was his only run surrendered and one of four hits he allowed over seven impressive innings. The right-hander was coming off his shortest start of the year last Wednesday at San Diego in a 13-7 loss. He still hasn't won in five starts since beating the Dodgers on June 10.
Alex Young relieved and pitched a 1-2-3 eighth then John Brebbia (6-1) struck out two in the ninth for the win.
Diamondbacks: 2B Ketel Marte was held out of the starting lineup for a second straight game with tightness in his left hamstring. ''He's still day to day, and when he's not day to day he's probably going to be our designated hitter,'' Lovullo said. ... SS Nick Ahmed, on the 60-day injured list with right shoulder inflammation, continues to rehab the injury and will be in the treatment phase until he's no longer experiencing symptoms, Lovullo said. ''He's not even close to baseball activities,'' Lovullo said.
Giants: Bart, who had a career-best three hits Monday after dealing with a sprained right ankle, extended his hitting streak to eight games and has been finding a groove since recalled from Triple-A Sacramento on July 6. ''Probably more important than anything else, he looked refreshed, like there had been sort of a weight lifted,'' Kapler said, ''like he got some rest.''
RHP Zach Davies (2-4, 4.11 ERA) pitches the third game of the four-game set Wednesday night seeking his first win since May 13 against the Cubs. The Giants counter with LHP Carlos Rodon, who tries to win his fourth straight start.
More AP MLB: https://apnews.com/hub/mlb and https://twitter.com/AP-Sports
Copyright 2022 STATS LLC and Associated Press. Any commercial use or distribution without the express written consent of STATS LLC and Associated Press is strictly prohibited.