Este programa buscará pistas de Spotify publicadas en el subreddit de HiphePheads y las agregará a una lista de reproducción de su elección. HiphePheads es un subreddit dedicado a todo Hiphop, incluidos los últimos mixtapes, videos, noticias y cualquier otra cosa relacionada con el hip hop de sus artistas favoritos. Puede utilizar este programa como un medio para encontrar la nueva música hiphop más popular del período actual. Este programa es un script de Python no se ejecuta como una instalación de paquete NPM de tradición; Sin embargo, todavía requiere que clone el repositorio localmente para la configuración crediential detenida más adelante.
Flask se ha agregado recientemente al proyecto. Puede leer sobre cómo configurarlo aquí.
Este proyecto usa Python3 y requiere un macOS y/o Linux. Windows no es suficiente para este programa. Puede descargar Linux a través de Windows descargando WSL.
Esta aplicación se descargará y ejecutará en su máquina. Para hacer esto, deberá registrar su copia local de la aplicación con Spotify creando una cuenta de desarrollador de Spotify.
Tutorial para configurar una cuenta de desarrollador de Spotify
Deberá registrar su aplicación y obtener la siguiente información:
También deberá configurar una instancia de Reddit con PRAW. Aquí hay una guía útil que solía hacer esto.
Descargue una copia local del proyecto para los próximos pasos con el siguiente comando:
Git clon https://github.com/skandakumaran/fresh_script.git
Para configurar sus credenciales, cree un nuevo archivo llamado credentials.json en la raíz del proyecto con el siguiente contenido:
{
"spotify": {
"username": "[Spotify username]",
"client_id": "[Spotify client id]",
"client_secret": "[Spotify client secret]",
"redirect": "[redirect uri]"
},
"reddit": {
"username": "[reddit username]",
"client_id": "[praw client id]",
"client_secret": "[praw client secret]"
}
}
Este proyecto utiliza un gerente de dependencia llamado Pipenv. Siga las instrucciones para instalarlo aquí.
Las dependencias del proyecto se enumeran en un PipFile. Usando Pipenv, puede instalar todas las dependencias con los siguientes comandos:
cd fresh_script
pipenv installPipenv utiliza VirtualEnv para crear un entorno Python con todas las dependencias enumeradas en PipFile. Antes de ejecutar el script Fresh.py, primero debe activar el entorno:
pipenv shellSi desea desactivar el entorno, use el comando
exitEjecutar el programa es simple. La primera vez que lo ejecute, se le solicitará sus credenciales de Spotify que se guardarán en un archivo de configuración para facilitar la facilidad de uso en el futuro. Elija ordenar los resultados de Hot o New, ingrese un límite de publicación y luego disfrute.
python3 fresh.py
Los siguientes argumentos se pueden pasar al guión
| Corto | Largo | Tipo | Descripción |
|---|---|---|---|
| -s | --clasificar | cadena | Ordenar por Hot, New, Rising, Random_Rising, Controversión o Top |
| -La | --límite | intencionalmente | Cuantos publicaciones para agarrar |
| -T | --límite | intencionalmente | Solo publicaciones con puntaje por encima del umbral |
| -F | --fresco | bool | Solo agregue pistas con la etiqueta [fresca] |
| -Iowa | --lude-álbums | bool | Incluir pistas de álbumes |
| -V | --verboso | bool | Se agregan canciones de salida y otra información |
| -pag | --listas | bool | Lista, agregue o elimine listas de reproducción para agregar canciones a |
Podemos usar Cron para ejecutar automáticamente el script periódicamente para mantenerlo actualizado. Necesitará una computadora MacOS o un servidor Linux para usar Cron.
running the script para asegurarse de que su archivo .config.ini se genere con los parámetros requeridoscrontab -e para abrir el editor cron, que es similar a Vim * * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)
0 9 * * * python /home/jsmith/fresh.py
Agradezco cualquier ayuda y apoyo. Siéntase libre de bifurcar y crear una solicitud de extracción