A guide to preventing Webscraping
github.com
github.com
Basically anything that would stop a scraper from downloading or interpreting a single page will also get in the way of search engines and screen readers. The former is generally not desirable and the latter may actually be illegal for some organizations. Just give up if this is your goal.
Rate limiting and other approaches to restrict bulk downloading of your entire dataset are more practical, but are still generally easy to work around if one is sufficiently determined unless you require authentication for all access.
Warning on this. Many browsers always leave the referer empty nowadays. A user with no referer is very likely to be a human.
If you data is that much valuable offer them at price so bot shouldn't be issue in many case?
But these days random eCommerce website asking for captcha is totally ridiculous. Some alibaba website are so frustrating that i don't even browse them anymore.