SEATTLE (AP) -- Nelson Cruz and Robinson Cano hit consecutive home runs off Cole Hamels to start the sixth inning, rallying the Seattle Mariners to a 4-3 victory over the Texas Rangers on Friday night.
Hisashi Iwakuma pitched seven effective innings and Mark Trumbo also went deep for the Mariners, who ended Texas' four-game winning streak.
Before the game, the Rangers reacquired first baseman Mike Napoli from Boston for a player to be named or cash. Boston also sent money to Texas as part of the trade.
Cruz opened the sixth with a shot to left field for his 32nd homer in his first season with Seattle. That extended his hitting streak to 17 games, two short of his career high. He's batting .421 during the streak with five doubles, 11 homers and 15 RBIs.
Cano followed with a drive to center, his 12th, on a 3-1 pitch. He also has picked it up over his last 16 games, hitting .361 with four doubles, a triple, four home runs and 16 RBIs.
Trumbo hit his fourth home run with the Mariners leading off the fifth. The three long balls were the most Hamels (0-1) had allowed since Boston tagged him for four on opening day.
The left-hander has a 5.93 ERA in two starts with Texas since his July 31 trade from Philadelphia. Texas' only two losses in the last nine games came in starts by Hamels. He left with a three-run lead in the eighth inning last Saturday, but the Rangers lost in 11 innings.
Hamels, who was 6-7 with the Phillies, allowed eight hits and four runs over six innings. He struck out seven, walked two and balked home a run.
Iwakuma (3-2) threw a career-high 118 pitches. He gave up three runs and six hits with no walks and six strikeouts.
Carson Smith finished for his 11th save.
The Mariners have won six straight against Texas, their longest win streak versus the Rangers since late in the 2001 season.
Texas scored twice in the first on Bobby Wilson's two-out, two-run double.
Hamels' run-scoring balk made it 2-1 in the third, but Iwakuma's wild pitch in the fourth pushed it back to a two-run lead for the Rangers.
Adrian Beltre's sixth-inning strikeout ended a streak of 48 at-bats without one. It was the longest streak in the majors. He then struck out in his subsequent at-bat.
Mariners: LHP Charlie Furbush, on the DL since July 8 with left biceps tendinitis, is progressing "pretty good," according to manager Lloyd McClendon. Furbush is close to being sent out on a rehab assignment. ... LHP James Paxton, placed on the disabled list May 29 with a strained left middle finger, is throwing without tape on his fingers. He is still throwing on flat ground.
Rangers: RHP Keone Kela is expected to return to the team Tuesday after a short stint with Double-A Frisco. Kela has had some minor injury issues but was sent down to give him a breather from the grind of his first big league season.
Mariners: LHP Mike Montgomery (4-4, 3.07 ERA) makes his 13th major league start and first against Texas.
Rangers: LHP Martin Perez (1-2, 6.64) starts for the sixth time since returning from Tommy John surgery. He beat the Giants 2-1 on Sunday, becoming the first pitcher in six years to get at least 25 outs on no more than 80 pitches. He is 2-1 with a 2.60 ERA in six career appearances against Seattle.