Our cruise that visited St Petersburg was in port two nights so we were able to have two full days of tours. We also had the option of extending the tour into the first evening. Booking with SPG they take care of the visas so no problem there. I highly recommend this company.
https://www.spb-tours.com/