Wyróżnił się w walkach w Rumunii, gdzie od 20 do 31 sierpnia 1944 batalion pod jego dowództwem pokonując drogę od granicy państwowej do Bukaresztu wziął do niewoli ok. 1250 żołnierzy i oficerów przeciwnika. 22 sierpnia 1944 batalion zajął miasto Vaslui, 31 sierpnia 1944 brał udział w zajmowaniu Bukaresztu. 7 sierpnia 1944 Krapiwin został ciężko ranny i odesłany do szpitala w Swierdłowsku.

Uchwałą Prezydium Rady Najwyższej ZSRR z 24 marca 1945 „za męstwo i heroizm przejawiane w walkach” został uhonorowany tytułem Bohatera ZSRR. Od stycznia do lipca 1945 był instruktorem w sztabie Uralskiego Okręgu Wojskowego, później został przeniesiony do rezerwy, 1947 ukończył Swierdłowski Instytut Prawniczy, pracował jako adwokat w Swierdłowsku. Od marca do czerwca 1949 członek, a 1949-1955 przewodniczący Sądu Krajowego w Krasnojarsku, od kwietnia do lipca 1955 przewodniczący Komitetu Wykonawczego Rady Obwodowej Chakaskiego Obwodu Autonomicznego, od marca 1956 zastępca przewodniczącego Komitetu Wykonawczego Krasnojarskiej Rady Krajowej.