You have to do it by Yahoo contacts. There was something else, I think it was facebook and google contacts that needs yahoo inbetween. I only did it 4 months ago and I've already forgotten my yahoo id twice, I wish there was a simpler way.
I remember reading that exporting certain facebook content violates facebook's terms of use. Just a heads up to check the terms of facebook if you were to create an app for export.
I decided that I only wanted some selected photos, so I installed a chrome plugin, downloaded some albums and then (love this bit!) dragged them onto Google+ to upload them.