I am trying to automate a process in which a user goes on a specific website, clicks a few buttons, selects the same values on the drop down lists and finally gets a link on which he/she can then download csv files of the data. 
The third-party vendor does not have an API.  How can I automate such a step?
The data I am looking for is processed by the third party and not available on the screen at any given point.
Generally, you can inspect the web traffic to figure out what kind of request is being sent.  EG., the tamperdata plugin for firefox, or the firebug net panel.
Figure out what the browser is sending (EG., POST request to the server) which will include all the form data of buttons and dropdowns, and then replicate that in your own code using Apache HTTP Client or jsoup or other HTTP client library.
How to automate user clicking through third-party website to retrieve data?