The 16-year-old boy was punched in the face and suffered a black eye in the incident, which happened on Otley Road in the town centre.
His attacker is said to have been aged about 20, with blond hair that was short at the sides and longer on top.
The man was wearing a red tartan-patterned jacket, grey trousers and grey work boots that were covered in dust.
The incident took place at about 4pm on Tuesday, November 21, close to Otley Road’s junction with Cold Bath Road.
Anyone with information is asked to ring Alan Mason at North Yorkshire Police on 101 or Crimestoppers anonymously on 0800 555111.