Bank of America has a
great online banking system. It's why I switched to them three years ago. I've
often wanted them to provide an RSS feed of recent transactions on my account
— I've emailed them multiple times, but no such luck. So, today I
finally got around to doing what I always do — I wrote a script to
scrape their website and return the data in the format I want.
Honestly, it's one of the more complex scraping scripts I've written. Their
sign-on process involves login tokens, variable URLs, and three challenge
questions in addition to entering your passcode. In the end I think it was
worth the time. Seeing my cleared and pending transactions in
NetNewsWire is awesome.
Before I give out the link to the script, I want to take a moment and
emphasize that this could be a potentially huge security risk. This script
requires you store your login credentials and the answer to all three of your
security questions in plain text. I recommend only running it locally on your
own computer. Store it on a public web server at your own risk! Definitely
don't store it on a shared host!!
You can download the script here.
Keep an eye out on this blog — I'll post updates if/when Bank of America
modifies their site and my scraping code breaks. Feel free to email me with any questions.