Indeed.com has just released their salary search engine that allows you to do a "Google-like" search to estimate your salary worth. Overall the site is very easy to use and produces some fairly accurate results. I say "Google-like" because it gathers the data from over 50 million job postings over the last 12 months. This is a great usage of and extends the "mash-up" theme and concept.
They gather their results by searching through job postings on "thousands of unique sources" and compiling the data. This is very similar to what Mario Klingemann has done for several of his Flash mash-ups, where he uses RegEx to search through an HTML page's source code and pull out only the data he is going to use. This completely removes the need for an open API on your data source because now any website which produces a somewhat consistant HTML page can be used for your data set.
For instance, lets take a look at one of their sample searches, graduate degree salaries. If you do the search the resulting URL is:
Looking at this URL, it'd be pretty easy to construct via user input. In fact, I even tried the URL without the
cat=degree, and it worked just as well and even gave us a cleaner page with less copy.If we view the source of the resulting page, you'll find this snippet of code which is ripe for pulling data from:
So from here you could search through the HTML until you reach:
From there you could pull out all types of free, open data including the job title, the salary and the width of each bar for a comparative graph (hey, it'll save you from doing the math!).
I'm sure you can see how easy it would be to apply this same concept to a variety of different sites that do not have an open API or RSS feed, etc. I can already think of several web apps that could benefit from displaying an average salary within them.