They only read state but never modify it. So it misses the whole point of interaction with a web resource.
They only read state but never modify it. So it misses the whole point of interaction with a web resource.
Yes, generally it's more dangerous to make destructive actions automatically on a site you don't know the structure of than against an API a human has considered and designed against. But think about it: the design of HTTP / REST makes that possible. If you tried to write a bot that downloaded random Windows apps and clicked random buttons to "scrape" them, you could easily click a "delete all my files" button in a file management app (not even considering malware). In a REST API, that's not really possible by just issuing GET requests. Google can safely GET any random URL on your site with no harm, unless you've made a serious programming error.
Those tools work by making assumptions. For example, your password manager looks for text input fields with the name attribute set to "user", "username", "login", "email", "account", etc. Create a page with a login form, but name the user field some gibberish, and I bet your password manager won't be able to auto-login.
> Scalper bots buy and resell all kinds of products by navigating web stores (unfortunately). etc.
And each of those bots will need to be written for each store. ie, a bot written to scalp products from Amazon won't work on BestBuy.com.