Его дед – Михаил Иванович Вешняков (~1733-1823) происходил из купцов города Кашина Тверской губернии. Отец Вишнякова – Петр Михайлович в 1816 г. имел собственное золото-прядильное дело.
В 1856 году Николай Петрович был принят без экзаменов в III класс немецкого пансиона доктора философии Кенигсбергского университета Циммермана. В пансионе полюбил минералогию и занимался ею с большим рвением.
В 1862 г. Вишняков поступил в Московский университет на естественное отделение физико-математического факультета.