Willemse was sent off following his second high hit of the night around the half-hour mark in France's 38-17 loss to the Irish in their Six Nations opener in Marseille on Friday.
He will miss Saturday's game against Scotland at Murrayfield as well France's match at home to Italy on February 25.
"Mitigating factors were applied by the Committee reducing the six-week entry point by two weeks, resulting in a sanction of four weeks for this offence," an independent disciplinary committee said on Tuesday.
Willemse was sin-binned after seven minutes when his shoulder connected with Andrew Porter's head.
He received his second yellow card and was sent off for a high tackle on Caelan Doris before halftime.