parseutils.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. # -*- coding: utf-8 -*-
  2. element_list = {
  3. 'category': ['button', {'jsaction':'pane.rating.category'}],
  4. 'rating': ['ol', {}, 'aria-label'],
  5. 'user_ratings_total': ['span', {'jsaction':'pane.rating.moreReviews'}],
  6. 'price_level':['span', {'jsan':'0.aria-label'}]
  7. }
  8. intro_list = {
  9. '服務選項': ['services','service'],
  10. '產品/服務': ['products','product'],
  11. '用餐選擇': ['choices','choice'],
  12. '設施': ['facilities','facility'],
  13. '客層族群':['groups','group'],
  14. '規劃':['plans','plan'],
  15. '付款方式':['payments','payment'],
  16. '健康與安全':['safeties','safety'],
  17. '特色':['specials','special'],
  18. '無障礙程度':['barrierlevels','barrierlevel'],
  19. '詳細資料':['items','item'],
  20. }
  21. week_list = {
  22. '星期日': 0,
  23. '星期一': 1,
  24. '星期二': 2,
  25. '星期三': 3,
  26. '星期四': 4,
  27. '星期五': 5,
  28. '星期六': 6,
  29. }
  30. def blank_check(value):
  31. while value.startswith(' '):
  32. value = value[1:]
  33. while value.endswith(' '):
  34. value = value[:-1]
  35. return value
  36. def value_check(key, value):
  37. value = blank_check(value)
  38. if key == 'rating':
  39. value = float(value.replace(' 星級',''))
  40. elif key == 'user_ratings_total':
  41. value = int(value.replace(' 則評論','').replace(',',''))
  42. elif key == 'price_level':
  43. value = len(['$' for i in value if i == '$'])
  44. if value == 0:
  45. value = ''
  46. else:
  47. value = int(value)
  48. return value