Для браузеров есть WebDriver и Selenium (но надо браузер запускать с определённым ключом, но через selenium можно запускать новый экземпляр с нужными параметрами), основной язык - java, но есть биндинги для других языков. Можно написать свою обёртку, управление браузером происходит через
JSON API.