Requisito previo: API de Facebook | Conjunto-1 , Conjunto-2
En este artículo discutiremos tres métodos:
- búsqueda
- obtener_conexiones
- get_allconnections
search
método:
Los tipos de valores válidos son place y placetopic.
Parámetros:
id: Es una string que contiene un valor válido.
args: Esto es opcional y necesitan pasar un parámetro de consulta.
Ejemplo: Obtener detalles de todos los lugares que están cerca de Connaught Place Delhi. La latitud y longitud de Connaught Place son – 28.6304, 77.2177
import json import facebook def main(): token = "Please replace with your access token" graph = facebook.GraphAPI(token) places = graph.search(type ='place', center ='28.6304, 77.2177', fields ='name, location') for place in places['data']: print('%s %s' %(place['name'].encode(), place['location'].get('zip'))) if __name__ == '__main__': main()
Consulte el enlace Buscar referencia para obtener una lista completa de los campos que se pueden usar.
get_connections
método :
Este método tiene como objetivo devolver todas las conexiones o podemos decir Edges para el objeto mencionado como dict .
Parámetros:
id: una string que especifica la identificación única del recurso en cuestión.
nombre de conexión: una string que especifica la conexión o los bordes entre los objetos.
Si el parámetro del nombre de la conexión se deja vacío, el get_connections
método simplemente devolverá la información básica del usuario autenticado.
Ejemplo #1: Queremos averiguar el recuento total de la cantidad de Amigos del usuario activo.
import json import facebook def main(): token = "Please replace this with your access token" graph = facebook.GraphAPI(token) friends = graph.get_connections(id ='me', connection_name ='friends') print(json.dumps(friends, indent = 4)) if __name__ == '__main__': main()
Ejemplo #2: Queremos obtener una lista de todas las publicaciones de una página. Para esto, usaremos get_connections y más adelante, demostraremos cómo usar el get_all_connections
método.
import json import facebook def main(): token = "Please replace this with your PAGE Access Token" graph = facebook.GraphAPI(token) posts_25 = graph.get_connections(id ='PAGE_ID', connection_name ='posts', fields ='id, created_time') print(json.dumps(posts_25, indent = 4)) if __name__ == '__main__': main()
Nota: Este ejemplo por defecto imprime las últimas 25 publicaciones. Puede agregar un filtro para la publicación usando limit(…) para establecer el límite para el número de publicaciones.
Ejemplo #3: En este ejemplo, usaremos el método get_connections para imprimir todos los comentarios de las publicaciones en reverse_chronological
orden, mostrar los subcomentarios, incluidos los comentarios ocultos, y también mostrar el recuento total de los comentarios.
import json import facebook def main(): token = "Please replace this with your PAGE Access Token" graph = facebook.GraphAPI(token) posts_25 = graph.get_connections(id ='POST_ID', connection_name ='comments', include_hidden = True, order ='reverse_chronological', filter ='stream', summary ='total_count') print(json.dumps(posts_25, indent = 4)) if __name__ == '__main__': main()
get_all_connections
método :
Itera sobre todas las páginas devueltas por una llamada get_connections y produce los elementos individuales.
Parámetros:
id: una string que especifica la identificación única del recurso en cuestión.
nombre de conexión: una string que especifica la conexión o los bordes entre los objetos.
Ejemplo n.º 1: en este ejemplo, he usado get_all_connections para enumerar todas las publicaciones de una página enumerada usando el parámetro desde fecha y hora.
import json import facebook from datetime import datetime def main(): token = "Please replace this with your PAGE Access Token" graph = facebook.GraphAPI(token) posts_all = graph.get_all_connections(id ='PAGE_ID', connection_name ='posts', fields ='created_time, id', since = datetime(2017, 1, 1, 0, 0, 0)) for ind, post in enumerate(posts_all): print(json.dumps(ind, indent = 4)) print(json.dumps(post, indent = 4)) if __name__ == '__main__': main()
Referencias:
- https://developers.facebook.com/docs/marketing-api/insights/parameters
- https://developers.facebook.com/docs/graph-api/
Publicación traducida automáticamente
Artículo escrito por rashi_garg y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA