ARLINGTON, Texas — Yoenis Cespedes gave Oakland an early lead with his bat. He prevented what could have been a huge collapse with his arm.
Cespedes hit a three-run homer in the first inning, then threw out Alex Rios at third base to end a big Texas comeback in the eighth as the Athletics survived a shaky night from the bullpen to extend their AL West lead with a 9-8 victory over the Rangers on Friday night.
The Rangers trailed 9-2 when Elvis Andrus and Rios had two-run singles as part of six-run inning to close within one.
Adrian Beltre's third hit was a single to Cespedes in left field, and the Cuban star ended the threat by throwing out Rios trying to go from first to third, where the tag from Josh Donaldson arrived just about the same time as Rios' foot.
"It was a bang-bang play," Donaldson said. "Cespedes made a perfect throw and I was able to put a tag on it, and it ended up as an out."
Rios said he was certain he would make it to third with the play happening in front of him.
"And actually, I was correct," said Rios, who was ejected by Andy Fletcher for angrily arguing the call. "I believe I was safe on that call."
The A's handed the Rangers their fourth straight loss and moved 41/2; games ahead of Texas in the opener of the final series of the regular season between the past two AL West champions.
Red Sox 8, Yankees 4
At Boston, Jarrod Saltalamacchia hit a tiebreaking grand slam in the seventh inning, Koji Uehara closed with another perfect inning and the Boston Red Sox beat the New York Yankees.
David Ortiz and Stephen Drew each doubled twice as the AL East-leading Red Sox won for the 15th time in 19 games. Saltalamacchia also doubled and scored twice.
Rays 3, Twins 0
At Minneapolis, Chris Archer pitched six scoreless innings and Tampa Bay added to its slim wild-card lead by beating Minnesota.
Orioles 5, Blue Jays 3
At Toronto, Chris Davis hit his major league-leading 50th home run, a tiebreaking solo shot in the eighth inning, and Baltimore erased a 3-0 deficit to beat Toronto and snap a three-game losing streak.
Davis became the 27th major leaguer to join the 50-homer club, and the first since Jose Bautista in 2010.
Tigers 6, Royals 3
At Detroit, Prince Fielder homered and drove in three runs, and Justin Verlander pitched effectively into the seventh inning to lift Detroit to victory over Kansas City.
Astros 9, Angels 7
At Houston, Jose Altuve hit a three-run homer and Matt Dominguez's grand slam powered a big fifth inning to give Houston a victory over Los Angeles for its fourth straight win.
Indians 3, White Sox 1
At Chicago, Danny Salazar struck out nine in 32/3 innings, Ryan Raburn hit an RBI double and Cleveland beat Chicago for the 10th time in a row this season.
Giants 4, Dodgers 2
At Los Angeles, Madison Bumgarner outdueled Clayton Kershaw, and the San Francisco Giants held off the Los Angeles Dodgers when Adrian Gonzalez's hard grounder took a fortunate hop for the final out.
With runners on first and third and two outs, Gonzalez hit the ball off Sergio Romo's leg, and the ball bounced to third baseman Joaquin Arias, who threw to first to end it.
A night earlier, Gonzalez hit an RBI single in the 10th to beat San Francisco.
Hunter Pence homered and scored twice. The Giants got to Kershaw (14-9) with four consecutive singles to start the seventh.
Padres 4, Braves 3
At Atlanta, Chase Headley hit a tying homer and Logan Forsythe drove in the go-ahead run in San Diego's two-run eighth and the Padres beat Atlanta to spoil Braves rookie David Hale's debut.
Hale pitched five scoreless innings and struck out nine, the most by a Braves pitcher in his first major league game.
Cubs 5, Pirates 4
At Pittsburgh, Anthony Rizzo hit a towering go-ahead, two-run homer off Jason Grilli in the seventh inning and the Chicago Cubs rallied past Pittsburgh.
Brian Bogusevic went 3 for 4 with his fifth homer of the season for Chicago. Dioneer Navarro added two hits as the Cubs ended Pittsburgh's four-game winning streak.
Nationals 6, Phillies 1
At Washington, Wilson Ramos homered and drove in three runs, Ross Ohlendorf pitched five innings in place of Stephen Strasburg, and Washington won its seventh straight.
Strasburg was scratched after experiencing forearm tightness during a throwing session Thursday in New York. Ohlendorf (4-0), who recently moved to the bullpen, stepped in and allowed a run on five hits over five innings.
Rockies 7, Diamondbacks 5
At Phoenix, Corey Dickerson hit a pitch that bounced well in front of the plate for a double, starting a five-run burst in the seventh inning that led the Colorado Rockies over Arizona.
Mets 4, Marlins 3
At New York, Lucas Duda hit a three-run homer and the New York Mets overcame two solo shots by Giancarlo Stanton tp beat Miami.
Brewers 5, Reds 1
At Milwaukee, Carlos Gomez went 3 for 4 with 5 RBIs while Kyle Lohse retired 23 consecutive batters during one stretch and finished with a four-hitter to lead Milwaukee.
Cardinals 2, Mariners 1
At St. Louis, Pete Kozma scored on catcher Mike Zunino's passed ball with the bases loaded and two outs in the 10th inning, and St. Louis regained the NL Central lead.
The Cardinals, now 6-1 on a nine-game homestand, lead the division by a game after Pittsburgh lost.
Kozma entered in the eighth inning as a pinch-runner, later stole third base and scored the tying run.