Deut. 22:29. The rapist must marry his victim if she is unwed. If I understand this commandment correctly, the woman is allowed to refuse said marriage. Furthermore, Jewish law does not forbid another Jew from marrying a woman who's been raped (excluding Cohens).
Therefore, it's possible for a rape victim to find another husband (other than her rapist), although it would have been exceedingly difficult considering most men would have shunned such a union during biblical times. Given that men were also the primary providers back then, forcing the rapist to take on the responsibility of marriage (if the woman agreed) can be viewed as helping her.
With that said, even though a Cohen can't marry a divorcee or a raped woman, I still don't understand why he must divorce his wife if she was raped. Is this halacha found in the Torah or Talmud? Even if it's rarely enforced, I still find it morally reprehensible.
Can anyone help me understand this halacha? I will not accept an answer that attributes the rape to anything the woman did (e.g. going to the wrong part of town).