Через js не уверен что получится, но можно попробовать.
Сначала узнайте какие "роботы" стучаться к вам на сайт (какой у них юзер агент и так далее) потом в хедер добавьте скрипт который если юзер агент пользователя есть в блэк листе то вызывает функцию
History.replaceState()
можно также добавить мета тег
refresh который будет удален если JS пройдет проверку.
*Но я не уверен что это сработает лучше всего такие проверки делать на сервере или если вы не знаете как это сделать или знаете только JS можете написать прокси слой с помощью
CloudFlare workers
**Или например после прохождения проверки записывать в SessionStorage флаг и динамически загружать контент с источника который имеет авторизацию