Pittsburgh On an unusual night that saw their six pitchers give up 17 hits in a win, the St. Louis Cardinals' best arm belonged to Jim Edmonds.
Albert Pujols and Bo Hart homered in the first inning and the Cardinals, relying again on solo homers and Edmonds' exceptional throwing, held on to beat Pittsburgh, 6-4, Monday.
Edmonds twice threw out runners at the plate, including Abraham Nunez in the eighth with the potential go-ahead run on base. The Pirates had four consecutive singles in the eighth, yet didn't score as relievers Pedro Borbon and Cal Eldred each retired a batter with the bases loaded.
"That's why he's got all that gold at home," Cardinals manager Tony La Russa said, referring to Edmonds' five Gold Gloves. "He's the most accurate thrower (in the majors) ... his ball is so true. He charges the ball good, he's got that terrific carry on his throws and perfect rotation."
The Cardinals won despite being outhit 17-10 as the Pirates stranded 13 runners. Jason Isringhausen pitched the ninth for his 12th save in 13 opportunities and third in as many nights.
Miguel Cairo and Scott Rolen also homered for the Cardinals, who hit four solo homers in the first four innings off Kip Wells a night after hitting three solo shots in beating the Atlanta Braves, 3-2.
Pujols, who won that game with a solo homer in the eighth off the often-unhittable John Smoltz, hit his second homer in as many at-bats in the first -- two batters after Hart started the game with his fourth homer.
Pujols' homer was his 32nd and his ninth in 21 career games at PNC Park. He extended his hitting streak to 25 games, the longest by a St. Louis hitter since Joe McEwing's 25-game streak in 1999.
Cairo hit his third homer with one out in the second and Rolen hit his 23rd in the fourth, making it 4-0. After scoring seven consecutive runs via solo homers over two games, the Cardinals added a run in the sixth on Cairo's RBI single and one more in the seventh on Kerry Robinson's single to take a 6-1 lead.
Cardinals starter Dan Haren (3-3) was helped out repeatedly by his defense, giving up 10 hits but only run in 51/3 innings and earning his third victory in four decisions.
"I don't know how many ways I can say it -- I'm disappointed with what happened," Pirates manager Lloyd McClendon said. "It's a very disappointing night. When you get 17 hits and only score four runs, you can't help but be disappointed."
Astros 3, Cubs 1
Chicago -- Wade Miller outpitched Kerry Wood, and Jeff Kent hit a two-run double for Houston.
Craig Biggio homered for the Astros, who maintained their two-game lead over St. Louis in the NL Central. The third-place Cubs fell 31/2 back.
Miller (9-10) gave up five hits and a run in six innings, striking out nine. Octavio Dotel pitched two scoreless innings, and Billy Wagner worked the ninth for his 34th save in 37 chances.
Wood (11-9) allowed seven hits and three runs in seven innings. He also struck out nine and reached 1,000 career strikeouts faster than any major league pitcher, achieving the milestone in his 134th game.
Kent, 10-for-19 (.526) against Wood entering the game, broke a scoreless tie in the fifth. After singles by Geoff Blum and Jeff Bagwell, he drove a ball over Doug Glanville's head in center.
Dodgers 9, Marlins 3
Miami -- Dontrelle Willis retired only six batters and gave up seven runs, including a three-run homer by Adrian Beltre.
In a rare show of offense by the Dodgers, their first eight hitters reached base in the third inning as they scored six times. Nine runs matches their best since April 20.
Willis (11-3) lasted only two-plus innings, matching his shortest outing. The rookie's ERA rose from 2.56 to 3.10, and in five starts since the All-Star break it's 6.48.
Odalis Perez (8-9) allowed two runs and seven hits in eight innings and retired 13 batters in a row. An .050 hitter, he also walked and scored the run that put Los Angeles ahead to stay.
Expos 3, Rockies 1
Montreal -- Vladimir Guerrero hit a two-run homer and Zach Day pitched six strong innings to lead Montreal.
The Expos, who returned from a 1-5 road trip, improved to 27-16 at Olympic Stadium.
Colorado lost its third in a row, falling to 19-42 on the road to begin a seven-game trip.
Guerrero followed Jose Vidro's one-out double in the third off Jason Jennings (10-10) with a drive over the center-field wall for his 14th homer.
Day (6-4) struck out a career-high seven while allowing five hits, including Chris Stynes' RBI double in the third.
Rocky Biddle pitched the ninth for his 28th save in 33 opportunities.