I agree, and I find scripting a web browser via the developer console a really productive approach.
First, it's completely interactive.
Second, it's the browser, so absolutely everything works. It doesn't matter if the data you want is only loaded by an obscure JS function when a hidden form is submitted on a button click. Just find the button, .click() it, and wait for a mutation event.
I have a write up on this[1], but I need to extend it with some more advanced examples.