
On Thursday, Zenit had routed Dinamo Minsk of Belarus 8-1 in the Europa League third qualifying round having lost the first leg 4-0.
On Sunday, they were battling back again after Ural midfielder Yuri Bavin had given his side a sixth-minute lead.
But a brace by Sebastián Driussi and goals by Artem Dzyuba and Leandro Paredes gave Zenit victory which left them two points clear of Spartak Moscow, who beat Krasnodar 1-0 on Saturday.
“We started badly, but later we found strength to change the course of the game,” said Zenit coach Sergei Semak.
“There are no easy wins for us, we’re just a football team like any other. It was a difficult match but my players all did really well.”
Defending champions Lokomotiv Moscow chalked up their season’s first win beating Samara 1-0 to go eighth despite finishing the match with 10 players.
Poland international midfielder Grzegorz Krychowiak scored in the 37th minute. Lokomotiv played the last 12 minutes a man short after winger Vladislav Ignatyev was sent off.