-
Автор темы
- #1
Плохой код включен в репозиторий, аккуратнее
Полезная штука, если вы листоман\меломан и скробблите треки через LastFM.
Нужные библиотеки:
p.s. В первый раз не пропустили. Убрал ссылку на репо и оставил только код под спойлером.
Полезная штука, если вы листоман\меломан и скробблите треки через LastFM.
Python:
VK = VKTOKEN #8 строка
LASTFM_API_KEY = LASTKEY #7 строка
LASTFM_API_SECRET = LASTSECRET #8 строка
user=USERNAME #11 строка
usr_id=VKUSEID #24 строка
Нужные библиотеки:
Пожалуйста, авторизуйтесь для просмотра ссылки.
,
Пожалуйста, авторизуйтесь для просмотра ссылки.
, остальное встроено в стандартный Python.Скробблить нечего\трек на паузе:
Скорббл в реальном времени:
Скорббл в реальном времени:
Python:
import pylast
import os
import vk_api
from time import sleep
VK = VKTOKEN
LASTFM_API_KEY = LASTKEY
LASTFM_API_SECRET = LASTSECRET
network = pylast.LastFMNetwork(api_key=LASTFM_API_KEY, api_secret=LASTFM_API_SECRET)
api = vk_api.VkApi(token=VK).get_api()
user=USERNAME
def main():
try:
user: pylast.User = network.get_user(user)
track: pylast.Track = user.get_now_playing()
except Exception as e:
user: pylast.User = network.get_user(user)
track = " "
return track
def get_status():
usr_id=VKUSERID #numbers, not strings
status=api.users.get(user_id=usr_id, fields='status')
return status
def set_status():
track=main()
api.status.set(text=f"{track}")
if __name__ == "__main__":
while True:
while True:
catch_status = get_status()
current_track = main()
current_status = catch_status[0]["status"]
if f"{current_track}" == current_status:
sleep(3)
break
else:
set_status()
break
p.s. В первый раз не пропустили. Убрал ссылку на репо и оставил только код под спойлером.