API de Facebook | Conjunto-3

Requisito previo: API de Facebook | Conjunto-1 , Conjunto-2

En este artículo discutiremos tres métodos:

  1. búsqueda
  2. obtener_conexiones
  3. 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:

  1. https://developers.facebook.com/docs/marketing-api/insights/parameters
  2. 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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *