I noticed that the process of earning some badges could be automated (and others with an army of bots), so I am thinking of writing an app called Badger to automate this. Is this good etiquette?
Nope, that is pretty much the worst type of etiquette.
"Etiquette is a code of behavior that delineates expectations for social behavior according to contemporary conventional norms within a group." wiki - Etiquette
I do not think the conventional wisdom for stack exchange badges is to automate achieving them. Botting is frowned upon, there is even a script which searches for botters.
Automating the achievement of badges would amount to exploitation.