ST. LOUIS -- Albert Pujols homered for a career-best fifth consecutive game, leaving him three games shy of the major league record. Another milestone, he has to himself.
Last year, Pujols became the only player to do it in his first six seasons.
"I think since his rookie year he's had us scratching our heads in amazement at the quality of his baseball, and not just his hitting," said Cardinals manager Tony La Russa. "One way to measure how great a player is in our game is you can compare some of the numbers with history.
"This is consistency and it speaks to strength of mind, I think, and competitiveness more than talent."
Pujols' latest heroics came with him hobbling around the basepaths with a hamstring injury that left him numb from the waist down at one point. He was held to a single off the base of the left-field wall in the fourth, then only jogged a few steps toward second on Juan Encarnacion's double-play ball before reversing direction and heading to the dugout.
Team doctors examined Pujols after the game, and the Cardinals' star said he was told there was no ligament damage. La Russa wanted to take him out, but Pujols convinced him he'd be smart, and Pujols finished the game.
"It was painful, I won't lie to you, and it was sore," Pujols said. "They wanted me to come out of the game but I wanted to go out there.
"If it got worse, obviously I'm going to come out, because this is not the time to get myself on the DL."
Pujols' two-run homer in the first gave St. Louis an early lead and Jim Edmonds' two-run, seventh-inning shot put the Cardinals ahead for good.
The record of eight consecutive games with a homer is shared by Dale Long (Pirates) in 1956, Don Mattingly (Yankees) in 1987 and Ken Griffey Jr. (Mariners) in 1993.
Yadier Molina also homered for the Cardinals, all three of the long balls coming off Scott Olsen (9-11), to send the Marlins to their season-worst eighth straight loss. St. Louis has won three in a row overall and 10 of its last 12 against Florida.
The Marlins' losing streak is their longest since another eight-game skid from July 7-18, 2002.
"We've got to get through that seventh inning," manager Fredi Gonzalez said. "That was the inning and we had the opportunity, and we didn't get it done."
Miguel Olivo and Jeremy Hermida homered for Florida, with Hermida's two-run drive off Ryan Franklin capping a three-run rally and putting Florida ahead 4-3 in the top of the seventh. Mike Jacobs' RBI single greeted Franklin.
In the bottom half, doubles by Scott Rolen and Molina tied it before Edmonds hit his ninth homer over the center field wall.
"They jumped right back on us and that's a sign of a good team," Hermida said. "They're the defending World Champions, and they're that for a reason."
The rally enabled La Russa to breath a sigh of relief. He second-guessed himself several times for not bringing in left-hander Tyler Johnson to face Jacobs instead of Franklin, a right-hander.
"I played that wrong and paid the price and fortunately it worked out OK," La Russa said. "It wasn't the dumbest thing I ever did, but it isn't the best move."
Pujols lined a two-run shot in the first into the Marlins bullpen in left field, a drive estimated at 382 feet, which extended his RBI streak to seven games. He has homered in six of the last seven games, totaling eight RBI.
He has homered in four straight games on seven occasions, the last time from April 15-18, 2006, and is the first Cardinal to homer in five straight since Edmonds from July 6-11, 2004. He has 14 homers since the All-Star break, most in the NL.
Cardinals starter Braden Looper left after Josh Willingham doubled to start the seventh, allowing two runs and four hits.
Olsen lasted 6 1/3 innings and gave up six runs and 10 hits, and the three homers allowed matched his season high. He's 2-7 with a 6.69 ERA on the road, and in three career starts against St. Louis he's 1-2 with a 6.14 ERA.
"This is the worst I've felt after a loss," Olsen said. "They gave me four runs and I shouldn't lose."
- Hanley Ramirez went 0-for-4 to end his streak of reaching base safely in 26 straight games.
- Eleven of Pujols' homers since the All-Star break have come with the bases empty, and 11 have come on the road.
- Twenty players have homered in six or more consecutive games.
- The Cardinals are 10-2 in their last 12 home games.
- Olivo's 12th homer in the second inning was the longest of the day, estimated at 431 feet.
- Molina is 4-for-7 the first two games of the series with three RBI and had the game-tying hit in the eighth inning on Tuesday.
- Mark McGwire is the last Cardinals player to homer in six straight games from Sept. 27, 1997 to April 4, 1998.