Requisito previo: API de Facebook | Conjunto-1
En este artículo, analizaremos los detalles de implementación de la API de Facebook para la plataforma Python. Comencemos con la descarga del Cliente de Facebook para Python. Use el siguiente comando de python para descargar el cliente de Facebook:
pip install facebook-sdk
Luego de una descarga exitosa, verá una pantalla como esta:
Ahora, comencemos con los métodos que se proporcionan con el módulo de Facebook para Python. Discutiremos los siguientes métodos en este artículo:
- obtener_objeto
- obtener_objetos
obtener_objeto:
Este método devuelve la información como dict asociado con el objeto determinado por el ID del objeto.
Parámetros:
id: una string que es una identificación única para el objeto en particular.
agrs (opcional): los agrs deben pasarse como parámetros de consulta.
Ejemplo n.º 1:
Obtener detalles sobre el usuario (en este caso, estamos usando el parámetro ‘yo’ para mostrar solo los detalles de mi cuenta).
Python3
import json import facebook def main(): token = "Please replace this line with your access token" graph = facebook.GraphAPI(token) profile = graph.get_object('me', fields ='first_name, gender, birthday, email') # return desired fields print(json.dumps(profile, indent = 4)) if __name__ == '__main__': main()
Ejemplo n.º 2:
obtener detalles sobre una página (si el usuario es el administrador de la página o si tiene permiso para administrar la página). Antes de continuar, veamos primero cómo determinar el ID de la página. Siga los pasos a continuación:
- Haga clic en la flecha hacia abajo en el lado derecho y navegue a la página para la que desea determinar la ID de la página.
- Haga clic en el nombre de la página para ir a la página.
- Haga clic en la opción Ver más en el lado izquierdo de la página debajo de la imagen de perfil de la página. Después de hacer clic, verá la opción «Acerca de»
- Haga clic en la opción «Acerca de». Verás los detalles de tu página. Desplácese hacia abajo hasta la parte inferior y encontrará su ID de página.
Ahora pase al código de Python para conocer los detalles de una página.
Python3
import json import facebook def main(): token = "Please replace this line with your access token" graph = facebook.GraphAPI(token) page = graph.get_object(id ='PAGEID', fields ='about, can_post, category') # return desired fields print(json.dumps(page, indent = 4)) if __name__ == '__main__': main()
Este código imprime la información básica sobre la página (acerca de), si el usuario solicitante puede publicar algo en esta página o no (can_post) y la categoría de la página (categoría). Puede tener la lista completa de los campos de Referencia de página
Ejemplo n.º 3: Obtener detalles sobre una publicación: mensaje y archivos adjuntos
Primero sigamos los pasos a continuación para encontrar el ID de publicación para una publicación de Facebook.
- En cualquier publicación, haga clic en la fecha y la hora mencionadas debajo del nombre de usuario.
- La publicación se abrirá en una nueva pestaña.
- Los números en el último después de la última barra («/») constituyen su ID de publicación.
Siga los pasos a continuación para encontrar la ID de usuario.
- Ve a tu página de perfil y haz clic derecho en tu foto de perfil. Seleccione la opción «Copiar dirección de enlace»
- Abra el Bloc de notas y presione Ctrl+V o haga clic con el botón derecho y seleccione la opción Pegar.
- Se pegará una URL. El ID de usuario se menciona al final después de «referrer_profile_id».
https://www.facebook.com/photo.php?fbid=913492355516001&set=a.187231114642052&type=3&source=11&referrer_profile_id=100000677755756
Código para encontrar detalles de una publicación.
Python3
import json import facebook def main(): token = "Please replace this line with your access token" graph = facebook.GraphAPI(token) post = graph.get_object(id ='USERID_POSTID', fields ='message, attachments{description}') # return desired fields print(json.dumps(post, indent = 4)) if __name__ == '__main__': main()
Puede tener la lista completa de los campos de Post Reference .
obtener_objetos:
Este método devuelve todos los objetos del gráfico de redes sociales de Facebook como dict . Cada ID mencionado en la lista de campos se asigna a un objeto.
Parámetros:
ids: una lista que contiene ID para múltiples objetos/recursos
agrs: esto es opcional y, si se menciona, debe pasarse como parámetros de consulta.
Ejemplo #1: Obtener el tiempo de creación de dos Publicaciones diferentes.
Python3
import json import facebook def main(): token = "Please replace this line with your access token" graph = facebook.GraphAPI(token) post_ids =["USERID_POSTID# 1", "USERID_POSTID# 2"] posts = graph.get_objects(ids = post_ids, fields ='created_time') # print creation time of the two posts. print(json.dumps(posts, indent = 4)) if __name__ == '__main__': main()
Ejemplo n.º 2: Obtener el recuento de comentarios de dos fotos diferentes.
Siga los pasos a continuación para encontrar la identificación con foto en Facebook.
- Haga clic en la foto en Facebook para la que desea identificar la identificación con foto.
- Busque “photo.php” en el área de direcciones web.
- Busque «fbid» seguido de un número justo después de la parte «photo.php» de la URL.
- El número que aparece entre la etiqueta «fbid» y el símbolo «&» es el número de identificación con foto.
Python3
import json import facebook def main(): token = "Please replace this line with your access token" graph = facebook.GraphAPI(token) photo_ids =["USERID_PHOTOID# 1", "USERID_PHOTOID# 2"] photos = graph.get_objects(ids = photo_ids, fields ='comments.summary(true)') # print total comment count for each photo print(json.dumps(photos, indent = 4)) if __name__ == '__main__': main()
Referencias:
- https://facebook-sdk.readthedocs.io/en/latest/api.html
- https://developers.facebook.com/docs/graph-api/reference
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