PHILADELPHIA — Like any good magician, Jose Altuve isn't sharing his secrets.

Once again turning his bat into a wand of sorts, Altuve had four hits for the second consecutive game, extending his hitting streak to 16 games as the Houston Astros routed the Philadelphia Phillies 13-4.

Altuve had two singles, two doubles and three RBIs to lead a potent Astros offence that rapped out 18 hits, eight for extra bases.

The four hits for Altuve matched a career high, which he tied Sunday at Baltimore. It was the 24th time he has had four hits in a game.

The All-Star second baseman has been on another level during his streak, hitting .528 (38 for 72). He has collected at least three hits in eight of those 16 games.

In the process, he has increased his major league-leading to .365. He is hitting .507 for the month of July.

How is he doing it? He isn't saying.

"I can't tell you because the other guys are probably going to see this interview and pitch me different," he joked after the game. "I'm just trying to stay with my approach and trying to get on base for the guys hitting behind me. This is a really good team that goes out and plays 100 per cent every game."

Make that every inning. Or even every at-bat. The effort shows — at 66-33, the AL West leaders have the best record in their league by far.

Alex Bregman homered and doubled twice for Houston. Brian McCann also homered.

"This is as good a team as we've seen," Phillies manager Pete Mackanin said. "They go up there to do damage. They look like they're ready to hit every pitch. They're not taking pitches to get a look at the pitcher. If you make a mistake out over the plate, they're going to hurt you."

The game ended after midnight, running late because of a rain delay in the fourth inning that lasted nearly two hours.

McCann hit his 13th homer and Bregman followed with his 10th to the same section in the right-field bleachers in the second off Vince Velasquez (2-6).

Houston batted around in the fourth after the rain delay, scoring five times off reliever Ricardo Pinto.

"It's something about rain delays where we come out swinging," manager A.J. Hinch said. "Altuve got a two-out hit with two strikes and it ignited a big inning for us. It happens fast with this team. Altuve continues to be amazing, I don't know how else to describe it."

Josh Reddick, Yuli Guriel and Carlos Beltran each picked up a pair of RBIs in the romp.

Joe Musgrove (5-8) earned the win for Houston by pitching three innings in relief of starter Brad Peacock, who was removed after the rain delay.

Phillies rookie Nick Williams had a bases-loaded triple in the seventh, extending his hitting streak to nine games. In just 20 games, he has 22 hits, 11 for extra bases, and has 18 RBIs.

TRAINER'S ROOM

Astros: OF George Springer left after the bottom of the third with discomfort in his left quadriceps. He appeared to twist awkwardly on a throw from centre field as he doubled up Andrew Knapp at first base to end the inning.

END OF THE LINE

The Phillies' run of scoring at least five runs ended at seven. The last time they had a streak of eight consecutive games with five or more runs was in 2005.

UP NEXT

Astros: RHP Charlie Morton (7-4, 4.18) pitches against his 2016 team for the first time. Morton had a short stint with the Phillies that lasted only four starts before missing the remainder of the season with a torn hamstring.

Phillies: RHP Nick Pivetta (3-5, 5.58) is averaging more than a strikeout per inning in 13 starts this season. But he has allowed 11 homers in his last six starts.