Italy made Canada pay for a string of handling errors as they ran out comfortable 48-7 winners to extend their advantage at the top of Pool B.
Italy tries: Steyn, Budd, Negri, Bellini, Zani, Penalty try, Minozzi
Italy conversions: Allan (3), Canna
Italy penalties: Allan
Canada tries: Coe
Canada conversions: Nelson
Italy made it two bonus-point wins from as many Rugby World Cup Pool B games as they beat Canada 48-7 in Fukuoka.
The Azzurri raced into a 17-0 lead in the opening 13 minutes, with Braam Steyn and captain Dean Budd registering tries.
Further efforts from Sebastian Negri and Mattia Bellini, either side of a penalty try, boosted the advantage before the spirited Canadians, playing their tournament opener, pulled a try back through Andrew Coe.
They've done it!
— ITV Rugby (@ITVRugby) September 26, 2019
That cheeky in-out-in 👍
Canada are on the board and it's a wonderful finish from Andrew Coe#ITVRugby #RWC2019 pic.twitter.com/cHY4KEoZso
Federico Zani and Matteo Minozzi added two more tries for the Italians late on as they wrapped up a comprehensive victory to which Tommaso Allan contributed three conversions and a penalty.
The seven-try haul from Conor O'Shea's side matched that from Sunday's 47-22 victory over Namibia.
Showing 10 changes in their starting line-up, Italy made a fast start, with Callum Braley going close to scoring a try in the opening few moments, Patrick Parfrey just getting to the ball first.
Soon after, O'Shea's men had points on the board thanks to an Allan penalty, and in the seventh minute the first try arrived as Steyn powered through the Canadian defence and over.
The second came in the 12th minute when Budd, skippering the side in place of Sergio Parisse, collected the ball from Braley and advanced to score under the posts, with the Canadians again providing little resistance.
Canada subsequently wasted a great chance to hit back in the 17th minute as Tyler Ardron teed up Matt Heaton - just on as a replacement for Lucas Rumball - but he fumbled the ball just a few metres from the line.
🏉 Lack of expertise in the office today but we've identified this as a bad bit of rugby
— Sporting Life (@SportingLife) September 26, 2019
🍁 Oh, Canada...pic.twitter.com/0d1T82MFWY
The Canucks exerted further pressure thereafter but could not reduce the deficit before the break, and three minutes into the second half Italy extended their advantage as Negri crashed over from close range.
Canada were then denied a try by a great Minozzi tackle on Jeff Hassler before Italy went further ahead through a penalty try, and moments later they were 36-0 up, Bellini crossing after fine work from Jake Polledri.
Canada thought they had got off the mark soon after when Ardron put the ball down under the posts, but the effort was disallowed following a review, with Ben LeSage judged to have knocked on.
After continued pressure, though, the try finally came for Kingsley Jones' team as Coe sped down the right, past Giulio Bisegni and scored in the corner.
Italy then had the final say, with Zani and Minozzi crossing in the 72nd and 78th minutes respectively.
Conor O'Shea hailed the progress made by Italy after their 48-7 Rugby World Cup victory over Canada in Fukuoka.
"Compared to that you can see this was a great victory and we have shown great progression. We now must show our very best level in the next two matches.
"We'll see how we go in the next two matches. We've already qualified for the next World Cup (guaranteed with a top-three finish in a group), which is huge, it was a goal."
O'Shea made 10 changes to his starting line-up, which included bringing Dean Budd in as captain, as Sergio Parisse dropped out.
He added: "The challenge for us was playing a second match in four days and we needed leadership. The way Dean has acted throughout the week has been exemplary. I'm very proud of Dean and all our squad.
"We talked about wasting chances against Namibia, but to play two matches in four days is hard physically and mentally. I am happy with how we played. I'm giving them the night off because I'm old school."
Kingsley Jones' Canada side wasted a great chance to score a try shortly after Budd's when skipper Tyler Ardron teed up Matt Heaton but he fumbled the ball just a few metres from the line.
Jones said: "I can't fault any of the players. I thought that they put it in, they kept attacking the game, I thought they took the game by the scruff of the neck, I thought the captain (Ardron) led well, didn't give an inch, and a number of other players as well. So unfortunately it's a case of not finishing our opportunities.
"I thought in the second 20 minutes of the first half our players were excellent and if we had taken a gift under the posts really, 17-7 and it starts to change the shape of the game.
"Unfortunately we didn't take those chances, but full credit to the players for creating them - we've got something to build on there, and I thought the boys really applied themselves well."
Jones added: "Italy were the better team, but there was a lot of points left out there and I think the scoreboard flatters them, mostly due to the points we left out there."
Canada next face New Zealand next Wednesday, while Italy take on South Africa two days later.