Police have launched a manhunt for a sex attacker who has struck at least four times within a five-mile radius.
His victims, who include a 13-year-old girl, only escaped because they bravely fought back or the pervert was confronted by passers-by.
But Detective Superintendent Phil Sedgwick, who is leading the hunt, said: "If he picks on someone who doesn't fight back, or there is nobody to step in and help, the consequences could be much worse."
The man has struck four times in the Saltaire, Bingley and Baildon areas over the last three months.
Police believe he may select his victims from a car before parking, 'stalking them' and forcing them into secluded areas.
The first attack occurred shortly before midnight on April 20 when a 20-year-old woman was walking along Salts Mill Road, Saltaire, close to the junction with Victoria Street.
Det Supt Sedgwick said the attacker crept up behind her, pushed her behind a wall and sexually assaulted her.
"Bravely, she put up a real fight and began shouting and screaming," he said.
"This attracted a nearby dog walker and the suspect ran off towards the Noble Comb pub."
The victim believes the attacker drove slowly past her in a dark, four-door saloon, shortly before pouncing.
The pervert struck next on July 19, this time targeting the 13-year-old by Coach Road, near the entrance to Shipley Glen tramway, Baildon, close to the entrance of the Shipley Glen Tramway.
She was walking in a wooded area when the man grabbed her from behind and bit her on the lip.
"Luckily, she put up a struggle, screaming out and elbowing him in the groin. He ran off and she managed to raise the alarm," said Det Supt Segwick.
Then, on July 13, in Park Road, Bingley, the attacker walked past an 18-year-old woman close to the junction of Lady Lane.
"He tried to drag her onto a secluded footpath and punched her several times in the head.
"She managed to break free and fortunately there was an off-duty police officer who came to her aid."
And the latest attack came just before 1am on July 24 in Green Road, Baildon.
"It was a very quiet area and the suspect approached and tried to force her on to an overgrown bank."
As he grabbed at the 24-year-old victim, she bit him on the finger and he punched her repeatedly in the face.
Det Supt Sedgwick said: "Two people who were passing disturbed him he ran and got into a small dark hatchback car, possibly a Vauxhall Astra or Nissan Micra."
The attacker was described as white, at least 6ft tall, with short fair hair, a long face and thin, protruding nose. He was once seen wearing a Liverpool football shirt and at other times a black hooded top.
Det Supt Sedgwick said: "This man is a great concern and we need to catch him before anything more serious occurs."
A day before the last reported assault, it is thought he may have targeted a woman close to Denby Drive in Baildon.
"I would urge this lady to contact us and we have specialist officers ready to speak to any other victims.
"We believe this man has knowledge of the area and could possible be local himself.
"The way we are going to catch him is with the help of the public."
Anyone with information should contact Keighley CID (01535) 617083.
Comments: Our rules
We want our comments to be a lively and valuable part of our community - a place where readers can debate and engage with the most important local issues. The ability to comment on our stories is a privilege, not a right, however, and that privilege may be withdrawn if it is abused or misused.
Please report any comments that break our rules.
Read the rules hereComments are closed on this article