Este ejemplo utiliza la búsqueda de archivos completos de GNIP para mostrar el volumen de actividad y los últimos tweets sobre cualquier tema determinado. También procesa tweets usando widgets.js de Twitter.
Como siempre, al desarrollar sobre la plataforma de Twitter, debes cumplir con la Política y el Acuerdo para desarrolladores.
Para ejecutar este código de muestra, puede instalar las bibliotecas necesarias con:
`pip install -r requirements.txt`
Cree una aplicación de Twitter (https://apps.twitter.com/). Además, asegúrese de que la URL de devolución de llamada esté completa. Esto puede apuntar a http://localhost:9000 para comenzar. Si no está incluido, recibirá errores de Autorización del cliente al iniciar sesión.
Especifique sus credenciales API y GNIP en app/settings_my.py en la siguiente sección:
GNIP_USERNAME = 'YOUR_GNIP_USERNAME'
GNIP_PASSWORD = 'YOUR_GNIP_PASSWORD'
GNIP_SEARCH_ENDPOINT = 'YOUR_GNIP_FULL_ARCHIVE_SEARCH_ENDPOINT'
Para inicializar su base de datos, ejecute desde el directorio tweet-search
:
python manage.py syncdb --settings=app.settings_my
Luego ejecuta:
python manage.py migrate --settings=app.settings_my
Para iniciar el servidor, ejecute lo siguiente desde el directorio tweet-search
:
fab start
Abra un navegador y vaya a http://localhost:9000
Tenga en cuenta que GNIP_SEARCH_ENDPOINT es una URL a la URL de búsqueda de archivo completo y tiene el formato https://data-api.twitter.com/search/fullarchive/...
Si desea utilizar la búsqueda de 30 días, abra el archivo gnip_search_api.py
, busque el término "30 DÍAS" y siga las instrucciones. (También debe utilizar la URL de búsqueda de 30 días y no la URL de búsqueda completa del archivo).
Por seguridad, este ejemplo de código tiene un proceso por lotes para borrar los tokens de autenticación de Twitter para los usuarios que:
Para ejecutar el proceso simplemente ejecute:
`fab invalidate'
La implementación en Heroku es aún más fácil.
Crea una aplicación de Twitter (https://apps.twitter.com/)
Haga clic en el botón Heroku a continuación
Cuando se le solicite durante la instalación de Heroku, especifique su:
Después de la implementación, en la configuración de la aplicación de Twitter, asegúrese de que la URL de devolución de llamada sea http://your-app-name.herokuapp.com/complete/twitter
Para sincronizar la base de datos, use la CLI de Heroku y ejecute lo siguiente:
heroku run python manage.py migrate --app your-app-name
Abra un navegador y vaya a la URL especificada por su implementación (http://your-app-name.herokuapp.com)
Para crear un usuario administrador, utilice el siguiente comando CLI de Heroku:
heroku run python manage.py createsuperuser --username=USERNAME --email=EMAIL --app your-app-name
Luego inicie sesión a través de la consola de administración y actualice su usuario de inicio de sesión inicial de Twitter en consecuencia.
Para asegurarse de que el script de invalidación de token funcione correctamente en Heroku, ejecute lo siguiente desde su máquina:
`heroku run fab invalidate --app=MY_APP_NAME'
Si esto se ejecuta correctamente, siga los pasos a continuación para ejecutarlo como un trabajo programado en Heroku:
heroku addons:add scheduler:standard --app=MY_APP_NAME
fab invalidate
Confirme la ejecución exitosa viendo el resultado en los registros de la aplicación Heroku.
Algunas consultas de ejemplo para ejecutar:
#MLB #SFGiants
@TwitterDev -(is:retweet)
walking dead (has:media)
En la interfaz de usuario, hay un enlace para mostrar opciones avanzadas. Específicamente:
(has:media)
a su consulta La búsqueda de GNIP también puede sugerir términos relacionados adicionales para agregar a su consulta. Haga clic en el enlace "términos relacionados" y aparecerá un menú desplegable para sugerir (y agregar) términos adicionales a su consulta: