Napoli won their 10th Serie A game in a row to sit eight points clear of AC Milan at the top of the table.
They dominated but had to wait until the 70th minute to open the scoring, with substitute Hirving Lozano scoring a penalty after Victor Osimhen was fouled.
Empoli’s Sebastiano Luperto was shown a second yellow card for fouling Lozano, who later crossed for Piotr Zielinski to wrap up the win.
Milan drew 0-0 at Cremonese.
Luciano Spalletti’s Napoli are now guaranteed to be top until the new year.
The Naples side have never won the title without Diego Maradona, with their two triumphs – in 1986-87 and 1989-90 – both coming during his spell there.