Last night I built a robot that brought us to our new best friend. Meet Cash.
Before I explain this strange statement, first let’s back up.
To summarize: heartbroken. That damn wonderful dog lived a great life and will never be replaced. But we have found we’re a two dog family. Enter the idea of visiting shelters….which is always fun..!
After a few misses, we found just how competitive adopting dogs is in Boulder. Yes, competitive.
Forget cycling, running, and climbing – the most competitive sport in Boulder is trying to adopt a dog from the pound link
Dogs fly out of the Boulder Humane Society. There was one Jen was interested in that was adopted within hours of her becoming available. We heard of one from employees that was going HOME within 45 minutes of stepping into the adoptables area. Seriously.
The employees say to just keep an eye on the website. So that’s what we did for a bit. We noticed it was updated frequently throughout the day. But there was no way to be notified of new dogs. Enter my light bulb moment.
I saw there was no RSS feed, and (of course) no API. So I took a glance at the HTML source and saw it would be super easy to screen scrape. Muahhaha…… this will be easy peasy! With just a little bit of hacking last night I had a working system that scraped their webpage every 15 minutes, stored it in a local database, and sent us an email when a dog became available! Ha! Leg up, take that one, Boulder animal people. Dog adoption performance enhancing drugs.
In the morning I surmized that wasn’t nearly geeky enough. I added functionality to email us when a dog appeared to be adopted (wasn’t listed any more). And since email is SO year 2000s, I spun up a new twitter account and had it tweet and direct message us when a dog showed up and went home. I dub thee: Dog(S)talker. Get it? Dog Stalker. Dogs Talker. I kill me…
Low and behold…while I was out with the kid on his bike and Jen working on an extension to the chicken coop, DING. DM from the new robot:
Due to an unfortunate typo in the code it is missing the details of the dog but still….. the fucking thing worked… A quick click on the link showed it was a 1 year old, Australian Kelpie Mix, and about 45 pounds. Check check and check all the boxes! I yelled across the street: “JEN!” to which I immediately heard the reply, “I’M GETTING READY TO GO [to the shelter]!”
15 minutes later I received this:
So an absolute max of 30 minutes from the time she was posted to the website to one of us showing up to check her out.
Long story short, he’s perfect for us. I’ll post the code to github soon. Perhaps if this is useful to anyone else I can add others to the notifications.