I have found that swapping the characters at the end of the file URL to _n, _b or _o no longer work.
Facebook has released graph API 2.0 which can be used to solve this problem.
Here is the solution:
1. Get the object_id from the post you want the image from
In every Post object there maybe an object_id field. This field only appears if the post has a picture of video (i.e. type = 'photo' or 'video')
e.g. if object_id = 123 and your access token = abc then the URL to call becomes https://graph.facebook.com/v2.0/123?access_token=abc
This API call gets more information about the given object_id. Since the object_id in this case represents a photo, the response will contain the various versions of the photo.
The response this request can be found here: https://developers.facebook.com/docs/graph-api/reference/v2.0/photo
3. Take the largest dimensioned image from the images field
The response from the API call has a field names images. This contains small to large sizes of the image. Just take the largest one.