Robbie Grossman's two-run homer put the Houston Astros ahead in the eighth inning and they held on for 4-3 victory over the Texas Rangers on Friday night.
Chris Carter hit his 25th home run for Houston, which trailed 2-1 entering the eighth inning. Jon Singleton singled with no outs and Grossman, who finished with three hits, launched a 92 mph fastball from Neal Cotts (2-6) into the Crawford Boxes in left field with one out to put the Astros on top.
Gregorio Petit's double with two outs added an insurance run.
Jose Veras (2-1) threw a perfect eighth for the win. Chad Qualls allowed a run in the ninth and there were runners at first and second with one out when Daniel Robertson grounded into a double play to end the game and give Qualls his 13th save.
The win extends Houston's streak over the Rangers to six games, the longest in franchise history. The Astros are 7-3 against Texas this season and remain ahead of the last-place Rangers in the AL West.
J.P. Arencibia hit a two-run homer in the first for Texas. Carter cut the deficit to one with his two-out shot in the fifth.
Carter, who homered twice Thursday night, has 12 home runs since July 4 and has upped his batting average from .181 to .225 since July 1.
Houston starter Brett Oberholtzer allowed six hits and two runs in seven innings.
Miles Mikolas yielded four hits and a run in five innings for the Rangers.
Houston second baseman Jose Altuve left the game with discomfort in his neck. Altuve didn't appear to be injured when he batted in the fifth inning, but was replaced by Petit for the start of the sixth.
Altuve leads the majors with 158 hits and his 45 steals are tops in the American League. He entered the night tied with Seattle's Robinson Cano for the AL lead in hitting at .335, but went 0 for 3 Friday night to leave him at .333.
Texas catcher Geovany Soto (groin) was activated from the disabled list on Friday and started his first game since July 21. It was just his fourth game after missing the first part of the season following surgery to repair torn cartilage in his right knee in March. He went 0 for 3 with a strikeout.
Rangers: Outfielder Alex Rios did not play Friday and will also be out of the lineup Saturday after he re-aggravated a sprained right ankle on Wednesday. "I could play on it, but I'd rather give it a little rest to make it feel better," Rios said. Manager Ron Washington said Rios was available to pinch-hit and he will definitely be back in the lineup Sunday.
Astros: Outfielders Dexter Fowler (back) and George Springer (quadriceps) are inching closer to being activated from the disabled list. Fowler started a rehabilitation assignment with Triple-A Oklahoma City on Friday night and Springer was back in Houston after returning from a rehabilitation assignment at Single-A Quad Cities.
Yu Darvish will start for Texas against Scott Feldman on Saturday. Darvish is 3-0 with a 1.52 ERA in three career starts at Minute Maid Park. He came within one out of a perfect game in Houston on April 2, 2013. He has a 2.16 ERA in his last four starts to lower his ERA to 2.82.
Feldman, who spent his first eight seasons with Texas, threw the third complete game of his career in his last start, allowing eight hits and one run in a 6-1 win over Toronto.