Max Pacioretty had five points, including his third hat trick of the season, and Montreal scored seven unanswered goals in a 7-4 win against Ottawa on Friday.
"We still had confidence," said Pacioretty, who got his team-leading 36th, 37th and 38th goals to tie Tyler Seguin of the Dallas Stars and Joe Pavelski of the San Jose Sharks for the most hat tricks in the NHL this season.
"We knew that they had gotten the bounces early on, but obviously you look at the shots and we definitely got some favorable bounces and that's just the way it goes some nights. But it just shows our last two games against them, you're never down and out.
"Obviously tonight was very early, but you keep working hard and good things happen."
In their prior game against the Senators on March 15, the Canadiens scored three times in the final 3:22 of the third period to erase a 4-1 lead in a 5-4 overtime win at Bell Centre.
Friday, Pacioretty assisted on Weaver's first goal in more than a year, and on Desharnais' goal at 9:14 of the third period, which increased the lead to 7-3.
"He's an animal," said Desharnais, who assisted on Pacioretty's third goal. "He scores every chance he's got and I don't expect less from him. He's a great guy, a great leader, and that's what we need from him. All the credit to him."
Peter Budaj made 39 saves for Montreal. The Canadiens, with four games left to play, moved into second place in the Atlantic Division with 95 points, two ahead of the Tampa Bay Lightning, who have one game in hand.
"They got off to a hot start and it was a good thing when they scored three goals in five minutes that you have 55 [minutes] to come back in the game," Desharnais said. "We didn't panic and we stuck to our plan and got back in the game."
"It's hard to say that we stopped playing, but we didn't play the game we wanted to," Smith said. "We gave them too many chances, they had a lot of room in front of the net and a couple of box-outs; the list goes on."
Craig Anderson stopped 16 of 23 shots for the Senators, whose faint Stanley Cup Playoffs hopes are slipping away. Ottawa has 78 points, seven points out of an Eastern Conference wild card with five games remaining.
Markov got this Canadiens comeback underway at 7:22 of the first period when his shot from behind the goal line went in off Anderson's left skate to draw Montreal within 3-1.
Thomas Vanek provided a screen when the Canadiens made it 3-2 at 9:17 on a shot by Weaver, who scored his first goal in 79 games dating to Feb. 22, 2013 for the Florida Panthers.
Weaver, who has eight goals in 598 NHL games, was well aware it had been a while since he scored.
"A very long time. I'm pretty sure you guys did the math," said Weaver, who was acquired in a trade with Florida on March 4. "Hey, when I came in here I said I was going to score a lot of goals. I just put my head down and shot it. I'd like to tell you guys that I was picking that corner. In this game, it's really tough to get a goal from the point without a screen."
Pacioretty tied it 3-3 with his first goal of the game at 15:52. Eller gave Montreal a 4-3 lead with his 12th goal of the season at 4:09 of the second.
Referee Francois St. Laurent waved off a potential tying goal by Ottawa at 4:17 before Pacioretty made it 5-3 with his second of the game on a breakaway at 15:25. He increased the lead to 6-3 when he completed his hat trick at 1:09 of the third period.
"They got a lucky first one, it looked like, and the momentum started to swing and we couldn't stop it," Senators center Kyle Turris said.
Ottawa took a 1-0 lead 2:28 into the game off a faceoff in the Canadiens zone. Smith, who won the draw back to Chris Phillips at the left point, beat Budaj with a backhand on a rebound of the defenseman's shot.
Zibanejad broke down the right side on a 2-on-1 and passed to Smith, who scored his second goal of the period into a wide open left side to put Ottawa up 3-0.
Hemsky did not play in the third period because of an upper-body injury. Ottawa plays at the New York Rangers on Saturday.