I've heard of JS scripts on forms that listen on inputs for clicks and monitor input field values for change. These scripts are used to catch/block auto filling by bots.
With jQuery (NojeJS-WebKit (for automating like selenium)) you can set the value of the input by its attribute and submit the form by calling
click
on the button. This is all automated.In phantomjs/selenium you can spin up a headless web-driver and get inputs, set values, and submit the form. Again this is all automated.
Question: What are the fundamental differences in how these implementations work?
For example: Selenium is advertised as behaving just like a human in the browser. Out of headless mode, you can actually SEE selenium inject/write the value into the form field, whereas jQuery does not.
Because of this, it is my understanding/belief that Selenium form automation can circumvent JS bot monitoring, while the same kind of automation in jQuery, (though much faster) will be detected.
Please share your knowledge on this topic. I have a particular interest in mimicking selenium's "human" behaviors strictly with jQuery because of the speed advantages.