Hi, FaceGrab lets you download anyone's Facebook full-size profile image from their username or userid without any need for login. It uses Facebook's Graph search.
This project was a code sprint. I started it when I needed an image set for a machine learning problem. I came across a Facebook graph feature which returns full-size profile images. I thought I could use this feature to programmatically generate a data-set of actual images. I consulted Facebook about the use of this feature as bug, they responded that the profile pictures are public and its not their responsibility.
So, I created this to generate a data-set of Facebook profile images. I think it could be useful for developers requiring a big image data-set for image processing or machine learning applications, or maybe more. Any comments are welcome.
I was taking an AI course in college, so I wanted to identify objects in an image using Neural Networks, I was moderately successful, I will try to improve in future. But, it was fun :)
Hehe, I didn't have that in mind when I made this, I just wanted some images to solve my problem. If you will use these for such tasks, I don't think you will be let off as easy as Mr. Zuckerberg :)
You can, but that will require additional work, first you will have to use the search feature of facebook graph api to get the userid of the email address and then finally, get the profile image from that userid using FaceGrab.
Now note, while getting the profile photo can be achieved without any login, however, if you want to get userid of a user from email address, you would require authorization token which you can get by logging in and creating a facebook app.
Actually, one doesn't need to scrape facebook usernames for getting an image dataset, FaceGrab works with userids as well, so you can specify a range of userids one wants to grab profile images of (e.g. 1-10000), and voila you will get all the images saved. Be wary of your hard disk space though.
9 comments
[ 3.0 ms ] story [ 30.8 ms ] threadThis project was a code sprint. I started it when I needed an image set for a machine learning problem. I came across a Facebook graph feature which returns full-size profile images. I thought I could use this feature to programmatically generate a data-set of actual images. I consulted Facebook about the use of this feature as bug, they responded that the profile pictures are public and its not their responsibility.
So, I created this to generate a data-set of Facebook profile images. I think it could be useful for developers requiring a big image data-set for image processing or machine learning applications, or maybe more. Any comments are welcome.
World without end, amen.
Now note, while getting the profile photo can be achieved without any login, however, if you want to get userid of a user from email address, you would require authorization token which you can get by logging in and creating a facebook app.
It's against the ToS to do so, but of course Facebook is willing to expose all that information for anyone willing to break the rules.