Есть магазин "Гуманитарная книга" на Васильевском острове - на Съездовской линии, если идти от метро по Среднему проспекту, он будет с правой стороны.
Вполне вероятно, что таких магазинов по городу несколько.
Еще раньше был магазин "Мир" на Невском, кажется, сразу за пересечением с Мойкой. Только сейчас там другой книжный, ассортимент там так себе... но вполне что-то можно найти.
А вообще - достаточно пройтись по Невскому (если не лень

) и Литейному проспектам. Там много чего интересного.