default.py 1.8 KB

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