Are there any good, free (or cheap) sources to get information about a company's financials that I can access via an API or XML feed or anything besides screen-scraping? Specifically I'm looking for things like total assets, liabilities, revenue, etc.
Yahoo! finance has a really simple API which returns results in CSV format. As well as stock price it can also return Dividend Yield, EBITDA, Annualized Gains etc. Here's an example:
http://finance.yahoo.com/d/quotes.csv?s=MSFT+AAPL+f=j4g3y
A really good explanation of what it can return is available here
[Edit] I just tried to use the explanation page, but it has been the subject of a Yahoo takedown notice. WayBack Machine solves that problem: http://web.archive.org/web/20140503202125/http://www.gummy-stuff.org/Yahoo-data.htm