A woman was brutally sexually assaulted in Vancouver's Strathcona neighbourhood​ on Thursday afternoon, and police now have a 25-year-old man in custody.

According to Vancouver police, the man barged into the woman's house in the 800 block of Union Street just after noon, tied her up and sexually assaulted her. They allege he was armed with a weapon.

Another man heard the woman's screams and intervened, getting into a fight with the alleged assailant. Several other people rushed to the aid of the woman, the struggle spilled out onto the street, and they held the assailant until police arrived.

Dog walker Amber Ritchie witnessed the assault.

"It looked like something out of a horror movie," she said.

"She [the victim] was covered in blood. I'm pretty traumatized. I'm sure it will haunt me for a while. It was a real, brutal, nasty, rape scene."

Police say the woman was rushed to hospital and suffered "significant" but not life-threatening injuries.

While police discourage witnesses from intervening, they described the man who rushed to the woman's aid as a "hero" and a Good Samaritan.

Plans are now in the works for a prayer walk for the woman as well as recognition for those who helped her.

"I'm really proud of them for doing that," said Pete Fry, who lives in the neighbourhood.

"As a small token we just started a little coffee fund because we're all Union Market locals and thought at least we can honour them in some way but I think ultimately we're all pushing towards doing something more meaningful for the victim."

Attacker was stranger, police say

According to Cost. Brian Montague, the alleged attacker did not know the woman.

"It appears random," he said. "It is a stranger attack, and there's nothing to suggest this is targeted at all."

Montague said the assailant was armed with a weapon when he entered the woman's house.

"Minding your own business, not doing anything wrong, and a stranger enters your home, you can't do anything as a victim to prevent that," he said.

"Thankfully, there were people nearby. She did the right thing, she fought and screamed, drew the attention of somebody else."

Police are recommending several charges against the man in custody, who they say has a criminal record outside of B.C. There is a warrant out for his arrest from London, Ont,. for failing to comply with a probation order.

Police said he recently moved to Vancouver and that they have had previous contact with him.