In St P you either do the ships excursions, or you book a private Russian registered tour guide. Having just returned I really would not advise getting a visa and trying to DIY. The port is in the industrial area, no taxis are allowed in, it is a 2-mile walk to get to the port gates, and then outside no one speaks English. So no, it really is not advisable. I booked a tour with Alla-tour.com. We were very very happy with the service, tour guide and the price of course was lots cheaper than what the ship was charging, we felt we saw more than anyone else, we got early entry into the Hermitage, we had a private mercedes van that seated 16 - and we did not have to be herded along with 40 other people. Happy to answer any other questions. Friends of ours booked a tour with DenRus and they too were very happy.