musicid.py 920 B

12345678910111213141516171819202122232425262728
  1. from sites.default import DefaultSite
  2. from sites.helper.query import Query
  3. import requests
  4. # TODO - Make compatible, add artist path
  5. class MusicId(DefaultSite):
  6. def __init__(self):
  7. super().__init__()
  8. self.url = 'https://musicid.ru/'
  9. self.query = Query(self, 'GET')\
  10. .add_parameter('song', '{0}') \
  11. .add_parameter('s', 'f')
  12. self.structure\
  13. .set_container_path('div.results')\
  14. .set_item_path('div.chkd')\
  15. .set_artist_path('b.artist')\
  16. .set_title_path('a.trackLink')\
  17. .set_url_path('a.link')
  18. self.request\
  19. .add_header('Referer', self.url + '/')\
  20. .add_header('Origin', self.url)
  21. def format_url(self, field):
  22. link = super().format_url(field)
  23. request = requests.get(link, cookies=self.request.cookie, allow_redirects=True)
  24. return request.url