Facebook Page details and the RESTful API?
-
21-09-2019 - |
Question
Hi I have a list of Facebook Page urls
eg...
http://www.facebook.com/daftpunk
http://www.facebook.com/DavidGuetta
...
What's the best way to:
Check if these urls are actually for Facebook Pages and not Profiles
Collect details such as # of fans from these Pages
Help would be very much appreciated.
Solution
Without scraping any content (which is against Facebook's terms of service anyway):
- Extract the username part of the URL i.e. the bit after the www.facebook.com/
- Do an FQL query of the form
select fan_count from page where username='michaeljackson'
- If a result is return, you know it's a Page and not a user's profile.
See the Page FQL table for other data you can retrieve in the same call.
OTHER TIPS
use urllib2 or pyfacebook to fetch the content
use BeautifulSoup or lxml to parse it
use the re module (regular expressions) to extract content for your verification and data gathering
The # of fans is in an a tag with the class 'FanManager'. you can use Beautiful Soup to get the contents of this a tag, and regular expressions to get the data from the string (ex: 1,000,000 fans) as an int or whatever you would like.
To see if the page exists, check some of the tags to see if you are on the 404 page.
You can use scrapy or BeautifulSoup to scrape the content.