{"id":23705285,"url":"https://github.com/javi-aranda/spoti-bot","last_synced_at":"2025-09-21T22:27:11.661Z","repository":{"id":106303086,"uuid":"342000132","full_name":"javi-aranda/spoti-bot","owner":"javi-aranda","description":"Bot de Telegram para crawlear enlaces de spotify y crear una playlist colaborativa","archived":false,"fork":false,"pushed_at":"2022-05-22T16:32:35.000Z","size":32665,"stargazers_count":0,"open_issues_count":7,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-30T01:19:03.772Z","etag":null,"topics":["bot","python","spotify","telegram"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/javi-aranda.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-02-24T18:42:59.000Z","updated_at":"2022-05-24T07:52:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"9a503436-f89f-4dbc-a315-2769b27d7161","html_url":"https://github.com/javi-aranda/spoti-bot","commit_stats":null,"previous_names":["javi-aranda/spoti-bot"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/javi-aranda/spoti-bot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javi-aranda%2Fspoti-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javi-aranda%2Fspoti-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javi-aranda%2Fspoti-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javi-aranda%2Fspoti-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/javi-aranda","download_url":"https://codeload.github.com/javi-aranda/spoti-bot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javi-aranda%2Fspoti-bot/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266427742,"owners_count":23926860,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","python","spotify","telegram"],"created_at":"2024-12-30T14:34:32.339Z","updated_at":"2025-09-21T22:27:06.611Z","avatar_url":"https://github.com/javi-aranda.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Spoti-bot\n\n## Qué es\nUn bot de telegram que intercepta URLs de Spotify en un grupo y añade los tracks a una lista de reproducción compartida.\n\n## Cómo funciona\n1. Necesitas escribir un fichero `.env` con la información relevante, \ncomo el `TELEGRAM_BOT_TOKEN` o las distintas variables de Spotify.\n\n2. Se recomienda instalar un entorno virtual de Python para gestionar las dependencias del proyecto, las cuales se pueden instalar mediante:\n    ```\n    pip install -r requirements.txt\n    ```\n\n    2.1. Para añadir un paquete nuevo se debe añadir primero a\n    `requirements.in`, posteriormente ejecutar\n    ```\n    pip-compile\n    ```\n    Y posteriormente instalarlo de manera habitual con `pip`.\n\n3. Una vez está todo preparado se puede ejecutar el bot en local\n    ```\n    python3 bot.py --local\n    ```\n\n## Deploy en Heroku\nPara que el bot funcione adecuadamente se necesita tener un entorno cloud, en este caso la version gratuita de Heroku ofrece todo lo necesario.\n\n### Variables de entorno\nEs necesario configurar de nuevo las variables de entorno que se usan en\nlocal y **NO ESTÁN** bajo control de versiones por motivos de\nseguridad mediante las [herramientas que ofrece Heroku](https://devcenter.heroku.com/articles/config-vars), \ntanto por CLI como por interfaz web.\n\n### Buildpacks\nSon scripts que se ejecutan cuando se realiza el despliegue de \nla aplicación, para este proyecto se han utilizado:\n1. https://github.com/heroku/heroku-buildpack-chromedriver\n2. https://github.com/heroku/heroku-buildpack-google-chrome\n\nSon necesarios para el testeo automático de Selenium a la hora\nde obtener el token OAuth2 de Spotify.\n\n### Aplicaciones extenas\nHay un addon instalado que realiza ping 2 veces cada minuto para\nmantener viva la instancia del bot, es totalmente opcional pero en caso de que la instancia se encuentre apagada tardará unos segundos más en responder.\n1. https://elements.heroku.com/addons/newrelic\n\n### Plugins\nSe ha instalado el plugin heroku-repo para reiniciar el desarrollo\ny que el código se pueda publicar en GitHub.\n\n## TODO's\nPara una lista de las tareas pendientes, consultar https://github.com/javisenberg/spoti-bot/projects/1 y https://github.com/javisenberg/spoti-bot/issues/.\n \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjavi-aranda%2Fspoti-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjavi-aranda%2Fspoti-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjavi-aranda%2Fspoti-bot/lists"}