PITTSBURGH -- The San Francisco Giants apparently felt at home playing an East Coast game on West Coast time, thanks to yet another long rain delay in soggy Pittsburgh.
The start of the game was delayed nearly three hours by rain. Eli Whiteside added a solo home run as the Giants went deep three times against Zach Duke (3-6), who waited through weather delays totaling 6 hours, 7 minutes over two nights to pitch only to fail to hold a 4-0 lead.
"It was a remarkable comeback," said Brian Wilson, who worked the ninth for his 100th career save. "It's not something we have done often this year, but it came at a good time. Especially after waiting all day."
Giants starter Jonathan Sanchez (4-4) gave up four unearned runs that followed first baseman Buster Posey's two-base error on Duke's grounder and Andrew McCutchen's two-run double in the second. The left-hander settled down and pitched shutout ball until being lifted with one out in the seventh.
Sanchez has beaten the Pirates twice in two starts this season, not allowing an earned run in 14 1/3 innings.
"I think this is good for the team to know we can come back," Uribe said. "It gives the pitcher confidence to know we can come back to win a game."
Duke was supposed to start Wednesday against the Cubs, only to be pushed back to Friday when the game was rained out following a delay of 3 hours, 12 minutes. Friday's start was delayed 2 hours, 55 minutes to 10 p.m. EDT, or about the same time the game would have started if it had been played in San Francisco.
"It seemed like that second inning we had control of the game, especially in a game that started at 10 o'clock," the Pirates' Neil Walker said. "You definitely felt like if you scored early, it was going to be a real good thing. It was a strange game."
And not only because of the starting time.
Down 4-0, the Giants scored twice in the fifth after Posey doubled and eventually came home on a double play, and Whiteside homered into the left-field bleachers.
"You've got to keep grinding and these guys did," Giants manager Bruce Bochy said. "You can't get down in this game and these guys kept their heads up and got these bats going."
An inning later, Freddy Sanchez singled ahead of Uribe's two-out homer, a drive to straightaway center that landed in the "R" in the "Pirates" that is carved into the outfield shrubbery. After Posey singled, Huff hit an even deeper drive that carried over the right-field stands for his seventh homer. Uribe's was his eighth.
"It's just a matter of letting things snowball," said Duke, who has won once in 10 starts. "I'm frustrated how this ended up. We should have won this game, and the responsibility falls on my shoulders that we didn't win it."
Freddy Sanchez, the former Pirates All-Star infielder, had three hits to raise his average to .358 in his first game in Pittsburgh since being traded to the Giants on July 29.
The Pirates put runners on second and third with two out in the seventh, but Santiago Casilla struck out Walker on a 98 mph fastball.
Guillermo Mota followed with a scoreless eighth, and Wilson pitched the ninth for his 14th save in 15 opportunities. The Pirates had only one hit, Andy LaRoche's single in the seventh, after their four-run second.
The Giants' Andres Torres, who shifted from right field to left to begin the ninth, stretched out to make an excellent catch of Ryan Doumit's drive into the left-center gap. ... The Pirates, who began the game last in the NL with 171 runs, scored more than three runs for the first time in nine games. ... The Giants won their sixth in eight games; the Pirates dropped their sixth in eight. ... No Pirates starting pitcher has won since May 18, when Duke beat the Phillies' Roy Halladay 2-1. ... Walker singled twice for his fifth multihit game in his nine major league starts.