PHOENIX -- Shin-Soo Choo homered twice and had four RBI, helping the Texas Rangers rally after a power outage delay to beat the Arizona Diamondbacks 9-5 Monday night.
Choo hit a three-run homer off Robbie Ray in the fifth inning and added a solo shot against Matt Andriese (0-1) in the eighth for his sixth 20-homer season.
A thunderstorm outside Chase Field caused some of the lights to go out in the sixth and, after a 21-minute delay, pinch-hitter Willie Calhoun lined a run-scoring single to right to put the Rangers up 5-4.
Eddie Butler (2-1) got the final out in the sixth inning and Rougned Odor hit a solo homer off Andriese in the seventh for the go-ahead run.
Texas has won four straight since losing five of nine.
Steven Souza hit a three-run homer and Eduardo Escobar had two RBI in his first game at Chase Field since being traded from Minnesota to Arizona.
Ray worked through some traffic in the first four innings before running into trouble in the fifth. The left-hander walked two and Choo lifted his 19th homer over the wall in left for a three-run shot.
The Diamondbacks answered in the bottom half with the help of a throwing error by third baseman Adrian Beltre, going up 4-3 when Souza bounced a three-run homer off the top of the wall in left.
Ray was lifted after a one-out walk in the sixth inning and Texas went ahead 4-3 on Robinson Chirinos' run-scoring single against Yoshihisa Hirano.
Ray allowed four runs on three hits and struck out six with four walks.
Diamondbacks: OF David Peralta was held out of the starting lineup after exiting Sunday's game against San Diego in the sixth inning with right shoulder tightness.
Texas right-hander Bartolo Colon will make his fifth attempt at becoming MLB's all-time wins leader among Latin American pitchers when he faces Arizona right-hander Zack Godley. The 45-year-old Colon is tied with Nicaraguan Dennis Martinez with 245 wins after losing his previous four outings.