lanqiu.py 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import logging
  2. from twisted.internet import defer,reactor
  3. from ..utils.helper import Helper
  4. from ..settings import LEAGUE_URL,MATCH_URL
  5. class ZuqiuPipeline(object):
  6. @defer.inlineCallbacks
  7. def process_item(self,item,spider):
  8. print('---------------------------------------------------------------------')
  9. logger=logging.getLogger(__name__)
  10. logger.info("进入管道")
  11. out=defer.Deferred()
  12. reactor.callInThread(self._do_calculation,item,out)
  13. yield out
  14. def _do_calculation(self,item,out):
  15. #先保存联赛
  16. league_name = item['league']
  17. uuid = Helper.genearte_uuid(league_name)
  18. type=item['showtype']
  19. is_rollball,is_today,is_morningplate = 0,0,0
  20. if type=="FT":
  21. is_today=1
  22. elif type=="":
  23. is_morningplate=1
  24. else:
  25. is_rollball=1
  26. league_key = ["name_chinese", "kind", "match_mode", "if_stop", "last_time", "lg_id", "source", "uuid"]
  27. league_value = [league_name, "1", "1", "0", item['datetime'], item['id'], "hgg070", uuid]
  28. #赛事
  29. childer = dict(zip(league_key, league_value))
  30. #联赛
  31. obj = {"game_code": "lq", "title": "league", "source": "hgg070","data":[childer]}
  32. # obj={"uuid":uuid,"league_id":item['id'],"league_name":league_name}
  33. res=Helper.async_post(LEAGUE_URL,obj)
  34. if res:
  35. if res.get('status')==1:
  36. logging.warning("联赛提交成功,{}".format(res))
  37. #提交赛事
  38. lres=Helper.async_post(MATCH_URL,childer)
  39. if lres.get('status')==1:
  40. logging.warning("联赛提交成功,{}".format(res))
  41. else:
  42. logging.warning("联赛提交失败,{}".format(res))
  43. else:
  44. logging.warning("联赛提交失败,{}".format(res))
  45. else:
  46. logging.warning("联赛提交失败,{}".format(res))