default.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from helper.sites import download
  2. from helper.sites.request import Request
  3. from helper.sites.query import Query
  4. from helper.sites.structure import Structure
  5. from helper.sites.item import Empty
  6. class DefaultSite:
  7. def __init__(self):
  8. self.url = 'All'
  9. self.query = Query(self)
  10. self.structure = Structure(self)
  11. self.request = Request(self)\
  12. .add_header('User-Agent',
  13. 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/605.1.15 '
  14. '(KHTML, like Gecko) Version/11.1 Safari/605.1.15')
  15. def perform_search(self, keywords):
  16. return self.request.search(keywords)
  17. def format_title(self, field):
  18. if ' - ' in field.text():
  19. return field.text().split(' - ')[1]
  20. else:
  21. return field.text()
  22. def format_artist(self, field):
  23. if ' - ' in field.text():
  24. return field.text().split(' - ')[0]
  25. else:
  26. return ''
  27. def format_duration(self, field):
  28. if field is None:
  29. return Empty
  30. return field.text()
  31. def format_size(self, field):
  32. if field is None:
  33. return Empty
  34. return field.text()
  35. def format_url(self, field):
  36. return field.attr('href')
  37. @staticmethod
  38. def download(item):
  39. item.format_original_url()
  40. # item.original_url = item.site.format_url(item.original_url)
  41. if 'zippyshare' in item.original_url:
  42. download.zippyaudio(item)
  43. elif 'krakenfiles' in item.original_url:
  44. download.krakenfiles(item)
  45. else:
  46. download.download(item)