SAN FRANCISCO _ The good folks that create baseball blooper reels will have a field day with the Giants' 4-2 victory over the Arizona Diamondbacks on Saturday.
A foul ball blasted a woman's beer-laden concessions tray. Giants left-hander Javier Lopez face-planted as he ran up the dugout steps to warm up. Diamondbacks left fielder Brandon Drury also ate dirt when he dived face-first into the bullpen mound while chasing a foul ball. Third baseman Jake Lamb lost a pop fly in the sun and it glanced off his shoulder.
Most amazing of all, and most unrepeatable, Buster Posey threw a ball back to the mound that dropped into Jake Peavy's glove even though the pitcher was arguing with an umpire and not paying attention.
The follies, though, did not include the Giants bullpen making a mess of the late innings. Lopez followed his flat-on-his-back pose by winning his matchup with Lamb in the fifth inning, and five more relievers followed suit as the Giants reached a season-high 23 games over .500.
The Giants (56-33) have one game remaining before the All-Star break, and a victory behind Madison Bumgarner on Sunday would clinch a 5-1 homestand and a series sweep of the Diamondbacks.
The Giants already ensured themselves a series victory; their series record is 9-0-1 against NL West opponents since they lost their last one to a division opponent April 18-21.
Grant Green hit a two-run home run, Brandon Crawford made yet another dazzling play and George Kontos got the victory on a day when the bullpen had to march the final 42/3 innings.
The Giants had every reason to be confident with Peavy on the mound. He was 3-0 with a 1.37 ERA in his previous four home starts and knew he would get a nine-day break before his next assignment.
Peavy did his usual amount of battling while stranding two runners in the first inning and minimizing the scoring in Arizona's two-run fourth.
The Diamondbacks began the inning with four consecutive hits off Peavy, including RBI singles from Yasmany Tomas and Brandon Drury. But Peavy used his fastball to get a pair of fly outs before coaxing a grounder from pitcher Robbie Ray to end the threat.
The Giants reclaimed a lead in the bottom of the inning, and the rally began with a break. Crawford tossed his bat upon hitting a pop fly but the sun appeared to blind Lamb, and the ball deflected off the third baseman's shoulder for a single. Green followed with his first major league home run since Aug. 30 of last season.
Giants broadcaster Duane Kuiper can relate to Green, who matched his career high for big league home runs in a season. He has hit exactly one in each of the past four years.
Combined with Brandon Belt's RBI triple in the third inning, the Giants held a 3-2 lead on Green's home run and Peavy needed help to protect it after two of the first three batters reached in the fifth.
Lopez dusted himself off from his splash entrance and got Lamb to hit a grounder up the middle that wasn't hit hard, but easily could have found a seam. Crawford, who was shaded only a touch toward the middle, ranged all the way to the right side of second base and avoided a collision with Green while throwing on the run to make a dazzling play on Lamb.
Then Kontos (2-1), who recorded 11/3 innings on just 10 pitches, retired Tomas on a fly ball to strand both of Peavy's runners.
Peavy did not complete five innings to qualify for the victory, but he struck out three and quietly passed Vida Blue for 58th place on the all-time strikeouts list (2,177). Peavy ranks fourth among active pitchers (behind CC Sabathia, Bartolo Colon and Felix Hernandez).
The Giants tacked on a run in the sixth on Ruben Tejada's double but Albert Suarez, moved from the rotation to long relief and now to a setup role, had to pull the bullpen's next escape when he struck out Paul Goldschmidt following a walk and an error by second baseman Ramiro Pena in the seventh. Josh Osich won his left-handed matchup when he got Lamb to ground out to strand the tying runs on base.
Then Sergio Romo, pitching on consecutive days for the first time since returning from the disabled list, looked sharp while recording three outs on 10 pitches.
Santiago Casilla pitched around an extra-base hit in the ninth while recording his 21st save in 25 chances. He has a 1.71 ERA in save appearances.