If you are on a cruise to SPB, assuming you haven't arranged a Russian visa, you will need to be on a "tour" of some type to have a visa. The tour company -- whether it is your cruise line or a land-based company -- will arrange your visa for purposes of the tour, and the tour only. The only other exception is if you have tickets to the World Cup 2018 (which we do
).
In terms of SPB excursions, there are many of them. I would suggest reviewing:
https://boards.cruisecritic.com/foru...prune=-1&f=192