FacebookUsersCollection: Build a collection of Facebook users

Description Usage Arguments Details Value Nesting fields Valid sources Author(s) See Also Examples

View source: R/FacebookUsersCollection.R

Description

Connect to Facebook Graph API, get public information from a list of Facebook users and build a FacebookUsersCollection-class instance.

Usage

1
2
3
4
FacebookUsersCollection(id, token = NULL, parameters = list(),
  fields = c("id", "name", "first_name", "last_name", "gender", "locale",
  "picture.fields(url).type(large)"), n = getOption("facebook.maxitems"),
  metadata = FALSE, .progress = create_progress_bar())

Arguments

id

A character vector or a comma-delimited string of IDs or an existing Facebook Collection of any of the supported types (see below).

token

Either a temporary access token created at https://developers.facebook.com/tools/explorer or the OAuth token created with fbOAuth. If token NULL and id is a collection, use the token of the source collection. Otherwise, no query is performed to the Facebook Graph API and an empty collection is returned.

parameters

A list of parameters to be added to the Facebook Graph API query. For more information on the accepted parameters, see: https://developers.facebook.com/docs/graph-api/using-graph-api.

fields

A character vector with the fields to get for each id. If no value for a given field is found, it will be set to NULL.

n

If id is an iterable collection, then n is the maximum number of users to be pulled for each element of the source collection in id. It can be set to Inf to pull out any accessible user and assumes the default value from the value of facebook.maxitems global option if missing. If id is not a collection or cannot be iterated, the parameter is ignored.

metadata

If set to TRUE, the metadata for each ID is pulled with the data and the type slot is fed accordingly. Please note that setting this to TRUE could considerably slow down the execution time, as more queries are needed.

.progress

progress_bar object as defined in the plyr package. By default the none progress bar is used, which prints nothing to the console. See create_progress_bar for details.

Details

FacebookUsersCollection is the constructor for the FacebookUsersCollection-class. It returns data about users.

After version 2.0 of the Facebook API, only id, name, and picture are available through the API as public informations. All the remaining fields will be missing unless the Application asks for specific permissions.

Value

A collection of users in a FacebookUsersCollection-class object.

Nesting fields

Due to the network-graph nature of Facebook data model, you can specify fields details for each field nesting .fields() clauses.

For example, if you need only id and source for the cover field, this is valid among others: cover.fields(id,source).

Following the same philosophy, if you need only id and name for the from node you can use from.fields(id,name).

Valid sources

Instead of a character vector, one of these collections can also be passed as parameter in id:

Be careful when binding this kind of collection starting from a FacebookPostsCollection, FacebookCommentsCollection or a FacebookLikesCollection.

In Facebook, one can publish, comment or like acting as a user or as a page. But since users and pages have different sets of fields and you won't know in advance if the author is a page or not, the constructor of this collection would fail due to inconsistent fields.

To avoid this, if id is an instance of one of the aforementioned collections, a serialization query is performed before to eventually filter out the pages and retain only the users. Finally, the real collection is built on this valid subset of user IDs only. This requires more queries and, usually, more time.

Author(s)

Gabriele Baldassarre https://gabrielebaldassarre.com

See Also

FacebookPostsCollection, FacebookCommentsCollection, FacebookLikesCollection, facebook.search

Other Facebook Collection Constructors: FacebookAlbumsCollection, FacebookCommentsCollection, FacebookConversationsCollection, FacebookEventsCollection, FacebookGroupsCollection, FacebookLikesCollection, FacebookMessagesCollection, FacebookPagesCollection, FacebookPhotosCollection, FacebookPostsCollection, FacebookReactionsCollection, FacebookVideosCollection

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
## Not run: 
## See examples for fbOAuth to know how token was created.
 load("fb_oauth")
 
## Getting information about 9th Circle Games' Facebook Page
 fb.pages <- FacebookPagesCollection(id = c("9thcirclegames", 
                                            "NathanNeverSergioBonelliEditore"),
                                     token = fb_oauth)
 
## Getting the commenters of the latest 10 posts
 fb.comments <- fb.pages %>% FacebookPostsCollection(n = 10) %>%
     FacebookCommentsCollection(fields=c("id",
                                         "from.fields(id,name)"),
                                n = Inf)

## Build a collection of users from who actually commented those posts  
 fb.commenting.users <- fb.comments %>% FacebookUsersCollection()
 
## Convert the collection to a data frame
 fb.commenting.df <- as.data.frame(fb.commenting.users)

## End(Not run)

facebook.S4 documentation built on May 2, 2019, 4 a.m.