My tool of choice that day was Python using OWSLib 0.7. Since then OWSLib has undergone some significant developments and is at version 0.8.2. The new library has good support for Filter queries, which means you can now construct a spatio-temporal and attribute query against the CSW service.
This only impacts the code for the first step so I'll just include an example which will search for "landsat-5" data in the time period between 1/1/2010 and 1/1/2011 touching the Australian Capital Territory bounding box. Don't forget to use your favorite python package manager to download the new OWSLib from pypi.