roll_lanqiu.py 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717
  1. # -*- coding: utf-8 -*-
  2. import datetime
  3. import json
  4. # import jsonpath
  5. import scrapy
  6. from scrapy.http import Request
  7. from ..items import Roll_Lanqiu
  8. def rangqiu_daxiao(inner):
  9. concede = [inner[i] for i in range(len(inner)) if i % 2 == 1]
  10. # 主队让球条件赔率
  11. concedehome = [concede[i] for i in range(len(concede)) if i % 2 == 0]
  12. # 客队让球条件赔率
  13. concedeguest = [concede[i] for i in range(len(concede)) if i % 2 == 1]
  14. # 主队让球条件
  15. concede_home_rule = [concedehome[i] for i in range(len(concedehome)) if i % 2 == 0]
  16. # 主队让球赔率
  17. concede_home = [concedehome[i] for i in range(len(concedehome)) if i % 2 == 1]
  18. # 客队让球条件
  19. concede_guest_rule = [concedeguest[i] for i in range(len(concedeguest)) if i % 2 == 0]
  20. # 客队让球赔率
  21. concede_guest = [concedeguest[i] for i in range(len(concedeguest)) if i % 2 == 1]
  22. return concede_home_rule, concede_home, concede_guest_rule, concede_guest
  23. def danshaung_fun(inner):
  24. odd_even = [inner[i] for i in range(len(inner)) if i % 2 == 1]
  25. # 全场 总分单
  26. odd_even_odd = [odd_even[i] for i in range(len(odd_even)) if i % 2 == 0]
  27. # 全场 总分双
  28. odd_even_even = [odd_even[i] for i in range(len(odd_even)) if i % 2 == 1]
  29. return odd_even_odd, odd_even_even
  30. class LanqiuSpider(scrapy.Spider):
  31. name = "roll_lanqiu"
  32. to_day = datetime.datetime.now()
  33. allowed_domains = ['hg3535z.com']
  34. start_urls = ['https://odata.jiushan6688.com/odds6i/d/getodds/zh-cn/sid/2/pt/4/ubt/am/pn/0/sb/2/dc/null/pid/0']
  35. #
  36. # https://odata.jiushan6688.com/odds6i/d/getodds/zh-cn/sid/2/pt/4/ubt/am/pn/0/sb/2/dc/null/pid/0
  37. custom_settings = {
  38. "ITEM_PIPELINES": {
  39. "hg3535.pipeline.roll_lanqiu.Roll_Lanqiupipeline": 200,
  40. },
  41. # 'LOG_LEVEL': 'DEBUG',
  42. # 'LOG_FILE': "../hg3535/log/roll_lanqiu_{}_{}_{}.log".format(to_day.year, to_day.month, to_day.day)
  43. }
  44. def parse(self, response):
  45. responses = json.loads(response.text)
  46. try:
  47. datas = responses["i-ot"]
  48. except:
  49. print("暂无滚球篮球数据")
  50. return
  51. if datas:
  52. for data in datas:
  53. egs = data['egs']
  54. for es in egs:
  55. es = es['es']
  56. for e in es:
  57. match_id = str(e['i'][16])
  58. url = 'https://odata.jiushan6688.com/odds6i/d/getamodds/zh-cn/eid/{}/iip/true/ubt/am/isp/false'.format(match_id)
  59. yield Request(url=url, callback=self.parse_other, dont_filter=True)
  60. def parse_other(self, response):
  61. new_datas = json.loads(response.text).get('eg', "")
  62. item = Roll_Lanqiu()
  63. if new_datas:
  64. # 联赛id
  65. league_id = new_datas.get("c", "").get("k", "")
  66. # 联赛名
  67. league_name = new_datas.get("c", "").get("n", "")
  68. new_data = new_datas.get("es", "")
  69. # result = new_data[0]
  70. for result in new_data:
  71. # 比赛id
  72. game_id = str(result['k'])
  73. # 球队1
  74. team_home = result['i'][0]
  75. # 球队2
  76. team_guest = result['i'][1]
  77. # 数量(97>)
  78. number = result['i'][2]
  79. # 比赛状态
  80. zhuangtai = result['i'][3]
  81. # 日期
  82. data_game = result['i'][4]
  83. # 开赛时间 滚球实际只有一个进行时间
  84. # time_game = result['i'][5]
  85. try:
  86. time_game = result['sb']['ct']
  87. except:
  88. time_game = '00:00'
  89. # 队1分数
  90. score_home1 = result['i'][10]
  91. # 队2分数
  92. score_guest1 = result['i'][11]
  93. # 第几节
  94. jijie = result['i'][12]
  95. # 球队得分
  96. qiudui = result['pci'].get('ctn', "")
  97. # ----------------------------------------让球分割线---------------------------------------------------------------------------
  98. concedes_dict = {}
  99. concedes_dict_rule = {}
  100. try:
  101. concedes = result['o']["ah"]["v"]
  102. # print(concedes)
  103. # 主队让球条件,主队让球赔率,客队让球条件,客队让球赔率
  104. concede_home_rule, concede_home, concede_guest_rule, concede_guest = rangqiu_daxiao(inner=concedes)
  105. concedes_dict_rule['coh'] = concede_home_rule
  106. concedes_dict['coh'] = concede_home
  107. concedes_dict_rule['cog'] = concede_guest_rule
  108. concedes_dict['cog'] = concede_guest
  109. except:
  110. concedes_dict_rule['coh'] = ""
  111. concedes_dict['coh'] = ""
  112. concedes_dict_rule['cog'] = ""
  113. concedes_dict['cog'] = ""
  114. # print(concedes_dict)
  115. try:
  116. half_concedes = result['o']["ah1st"]["v"]
  117. # 上半场 主队让球条件
  118. half_concede_home_rule, half_concede_home, half_concede_guest_rule, half_concede_guest = rangqiu_daxiao(inner=half_concedes)
  119. concedes_dict_rule['coh_h'] = half_concede_home_rule
  120. concedes_dict['coh_h'] = half_concede_home
  121. concedes_dict_rule['cog_h'] = half_concede_guest_rule
  122. concedes_dict['cog_h'] = half_concede_guest
  123. except:
  124. concedes_dict_rule['coh_h'] = ""
  125. concedes_dict['coh_h'] = ""
  126. concedes_dict_rule['cog_h'] = ""
  127. concedes_dict['cog_h'] = ""
  128. # 第一节让球
  129. try:
  130. one_concedes = result['o']["ahq1"]["v"]
  131. one_concede_home_rule, one_concede_home, one_concede_guest_rule, one_concede_guest = rangqiu_daxiao(inner=one_concedes)
  132. concedes_dict_rule['coh_1'] = one_concede_home_rule
  133. concedes_dict['coh_1'] = one_concede_home
  134. concedes_dict_rule['cog_1'] = one_concede_guest_rule
  135. concedes_dict['cog_1'] = one_concede_guest
  136. except:
  137. concedes_dict_rule['coh_1'] = ""
  138. concedes_dict['coh_1'] = ""
  139. concedes_dict_rule['cog_1'] = ""
  140. concedes_dict['cog_1'] = ""
  141. # 第二节让球
  142. try:
  143. two_concedes = result['o']["ahq2"]["v"]
  144. two_concede_home_rule, two_concede_home, two_concede_guest_rule, two_concede_guest = rangqiu_daxiao(inner=two_concedes)
  145. concedes_dict_rule['coh_2'] = two_concede_home_rule
  146. concedes_dict['coh_2'] = two_concede_home
  147. concedes_dict_rule['cog_2'] = two_concede_guest_rule
  148. concedes_dict['cog_2'] = two_concede_guest
  149. except:
  150. concedes_dict_rule['coh_2'] = ""
  151. concedes_dict['coh_2'] = ""
  152. concedes_dict_rule['cog_2'] = ""
  153. concedes_dict['cog_2'] = ""
  154. # 第三节让球
  155. try:
  156. three_concedes = result['o']["ahq3"]["v"]
  157. three_concede_home_rule, three_concede_home, three_concede_guest_rule, three_concede_guest = rangqiu_daxiao(inner=three_concedes)
  158. concedes_dict_rule['coh_3'] = three_concede_home_rule
  159. concedes_dict['coh_3'] = three_concede_home
  160. concedes_dict_rule['cog_3'] = three_concede_guest_rule
  161. concedes_dict['cog_3'] = three_concede_guest
  162. except:
  163. concedes_dict_rule['coh_3'] = ""
  164. concedes_dict['coh_3'] = ""
  165. concedes_dict_rule['cog_3'] = ""
  166. concedes_dict['cog_3'] = ""
  167. # 第四节让球
  168. try:
  169. four_concedes = result['o']["ahq4"]["v"]
  170. four_concede_home_rule, four_concede_home, four_concede_guest_rule, four_concede_guest = rangqiu_daxiao(inner=four_concedes)
  171. concedes_dict_rule['coh_4'] = four_concede_home_rule
  172. concedes_dict['coh_4'] = four_concede_home
  173. concedes_dict_rule['cog_4'] = four_concede_guest_rule
  174. concedes_dict['cog_4'] = four_concede_guest
  175. except:
  176. concedes_dict_rule['coh_4'] = ""
  177. concedes_dict['coh_4'] = ""
  178. concedes_dict_rule['cog_4'] = ""
  179. concedes_dict['cog_4'] = ""
  180. # ----------------------------------------总分大小分割线 - ---------------------------------------------------------------
  181. # 全场总分大小
  182. total_sizes_dict = {}
  183. total_sizes_dict_rule = {}
  184. try:
  185. total_sizes = result['o']["ou"]["v"]
  186. total_sizes_big_rule, total_sizes_big, total_sizes_small_rule, total_sizes_small = rangqiu_daxiao(inner=total_sizes)
  187. total_sizes_dict_rule["tnb"] = total_sizes_big_rule
  188. total_sizes_dict["tnb"] = total_sizes_big
  189. total_sizes_dict_rule["tns"] = total_sizes_small_rule
  190. total_sizes_dict["tns"] = total_sizes_small
  191. except:
  192. total_sizes_dict_rule["tnb"] = ""
  193. total_sizes_dict["tnb"] = ""
  194. total_sizes_dict_rule["tns"] = ""
  195. total_sizes_dict["tns"] = ""
  196. # 上半场总分大小
  197. try:
  198. half_total_sizes = result['o']["ou1st"]["v"]
  199. half_total_sizes_big_rule, half_total_sizes_big, half_total_sizes_small_rule, half_total_sizes_small = rangqiu_daxiao(
  200. inner=half_total_sizes)
  201. total_sizes_dict_rule["tnb_h"] = half_total_sizes_big_rule
  202. total_sizes_dict["tnb_h"] = half_total_sizes_big
  203. total_sizes_dict_rule["tns_h"] = half_total_sizes_small_rule
  204. total_sizes_dict["tns_h"] = half_total_sizes_small
  205. except:
  206. total_sizes_dict_rule["tnb_h"] = ""
  207. total_sizes_dict["tnb_h"] = ""
  208. total_sizes_dict_rule["tns_h"] = ""
  209. total_sizes_dict["tns_h"] = ""
  210. # 第一节总分大小
  211. try:
  212. one_total_sizes = result['o']["ou1st"]["v"]
  213. one_total_sizes_big_rule, one_total_sizes_big, one_total_sizes_small_rule, one_total_sizes_small = rangqiu_daxiao(
  214. inner=one_total_sizes)
  215. total_sizes_dict_rule["tnb_1"] = one_total_sizes_big_rule
  216. total_sizes_dict["tnb_1"] = one_total_sizes_big
  217. total_sizes_dict_rule["tns_1"] = one_total_sizes_small_rule
  218. total_sizes_dict["tns_1"] = one_total_sizes_small
  219. except:
  220. total_sizes_dict_rule["tnb_1"] = ""
  221. total_sizes_dict["tnb_1"] = ""
  222. total_sizes_dict_rule["tns_1"] = ""
  223. total_sizes_dict["tns_1"] = ""
  224. # 第二节场总分大小
  225. try:
  226. two_total_sizes = result['o']["ou2st"]["v"]
  227. two_total_sizes_big_rule, two_total_sizes_big, two_total_sizes_small_rule, two_total_sizes_small = rangqiu_daxiao(
  228. inner=two_total_sizes)
  229. total_sizes_dict_rule["tnb_2"] = two_total_sizes_big_rule
  230. total_sizes_dict["tnb_2"] = two_total_sizes_big
  231. total_sizes_dict_rule["tns_2"] = two_total_sizes_small_rule
  232. total_sizes_dict["tns_2"] = two_total_sizes_small
  233. except:
  234. total_sizes_dict_rule["tnb_2"] = ""
  235. total_sizes_dict["tnb_2"] = ""
  236. total_sizes_dict_rule["tns_2"] = ""
  237. total_sizes_dict["tns_2"] = ""
  238. # 第三节总分大小
  239. try:
  240. three_total_sizes = result['o']["ou3st"]["v"]
  241. three_total_sizes_big_rule, three_total_sizes_big, three_total_sizes_small_rule, three_total_sizes_small = rangqiu_daxiao(
  242. inner=three_total_sizes)
  243. total_sizes_dict_rule["tnb_3"] = three_total_sizes_big_rule
  244. total_sizes_dict["tnb_3"] = three_total_sizes_big
  245. total_sizes_dict_rule["tns_3"] = three_total_sizes_small_rule
  246. total_sizes_dict["tns_3"] = three_total_sizes_small
  247. except:
  248. total_sizes_dict_rule["tnb_3"] = ""
  249. total_sizes_dict["tnb_3"] = ""
  250. total_sizes_dict_rule["tns_3"] = ""
  251. total_sizes_dict["tns_3"] = ""
  252. # 第四节总分大小
  253. try:
  254. four_total_sizes = result['o']["ou4st"]["v"]
  255. four_total_sizes_big_rule, four_total_sizes_big, four_total_sizes_small_rule, four_total_sizes_small = rangqiu_daxiao(
  256. inner=four_total_sizes)
  257. total_sizes_dict_rule["tnb_4"] = four_total_sizes_big_rule
  258. total_sizes_dict["tnb_4"] = four_total_sizes_big
  259. total_sizes_dict_rule["tns_4"] = four_total_sizes_small_rule
  260. total_sizes_dict["tns_4"] = four_total_sizes_small
  261. except:
  262. total_sizes_dict_rule["tnb_4"] = ""
  263. total_sizes_dict["tnb_4"] = ""
  264. total_sizes_dict_rule["tns_4"] = ""
  265. total_sizes_dict["tns_4"] = ""
  266. # ----------------------------------------总分单双分割线------------------------------------------------------------------
  267. # 全场 总分单双
  268. odd_evens_dict = {}
  269. odd_evens_dict_rule = {}
  270. try:
  271. odd_evens = result['o']["oe"]["v"]
  272. # 全场 总分单, 全场 总分双
  273. odd_evens_dict["tss"] = odd_evens[1]
  274. odd_evens_dict_rule['tss'] = '单'
  275. odd_evens_dict["tsd"] = odd_evens[3]
  276. odd_evens_dict_rule['tsd'] = '双'
  277. except:
  278. odd_evens_dict["tss"] = ""
  279. odd_evens_dict_rule['tss'] = '单'
  280. odd_evens_dict["tsd"] = ""
  281. odd_evens_dict_rule['tsd'] = '双'
  282. # 上半场全场 总分单双
  283. try:
  284. half_odd_evens = result['o']["oe1st"]["v"]
  285. # 上半场 总分单, 上半场 总分双
  286. odd_evens_dict["tss_h"] = half_odd_evens[1]
  287. odd_evens_dict_rule['tss_h'] = '单'
  288. odd_evens_dict["tsd_h"] = half_odd_evens[3]
  289. odd_evens_dict_rule['tsd_h'] = '双'
  290. except:
  291. # half_odd_even_odd = ""
  292. # half_odd_even_even = ""
  293. odd_evens_dict["tss_h"] = ""
  294. odd_evens_dict_rule['tss_h'] = '单'
  295. odd_evens_dict["tsd_h"] = ""
  296. odd_evens_dict_rule['tsd_h'] = '双'
  297. # 总分:单/双-第一节
  298. try:
  299. one_odd_evens = result['o']["oeq1"]["v"]
  300. odd_evens_dict["tss_1"] = one_odd_evens[1]
  301. odd_evens_dict_rule['tss_1'] = '单'
  302. odd_evens_dict["tsd_1"] = one_odd_evens[3]
  303. odd_evens_dict_rule['tsd_1'] = '双'
  304. except:
  305. odd_evens_dict["tss_1"] = ""
  306. odd_evens_dict_rule['tss_1'] = '单'
  307. odd_evens_dict["tsd_1"] = ""
  308. odd_evens_dict_rule['tsd_1'] = '双'
  309. # 总分:单/双-第二节
  310. try:
  311. two_odd_evens = result['o']["oeq2"]["v"]
  312. odd_evens_dict["tss_2"] = two_odd_evens[1]
  313. odd_evens_dict_rule['tss_2'] = '单'
  314. odd_evens_dict["tsd_2"] = two_odd_evens[3]
  315. odd_evens_dict_rule['tsd_2'] = '双'
  316. except:
  317. # two_odd_even_odd = ""
  318. # two_odd_even_even = ""
  319. odd_evens_dict["tss_2"] = ""
  320. odd_evens_dict_rule['tss_2'] = '单'
  321. odd_evens_dict["tsd_2"] = ""
  322. odd_evens_dict_rule['tsd_2'] = '双'
  323. # 总分:单/双-第三节
  324. try:
  325. three_odd_evens = result['o']["oeq3"]["v"]
  326. odd_evens_dict["tss_3"] = three_odd_evens[1]
  327. odd_evens_dict_rule['tss_3'] = '单'
  328. odd_evens_dict["tsd_3"] = three_odd_evens[3]
  329. odd_evens_dict_rule['tsd_3'] = '双'
  330. except:
  331. odd_evens_dict["tss_3"] = ""
  332. odd_evens_dict_rule['tss_3'] = '单'
  333. odd_evens_dict["tsd_3"] = ""
  334. odd_evens_dict_rule['tsd_3'] = '双'
  335. # 总分:单/双-第四节
  336. try:
  337. four_odd_evens = result['o']["oeq4"]["v"]
  338. odd_evens_dict["tss_4"] = four_odd_evens[1]
  339. odd_evens_dict_rule['tss_4'] = '单'
  340. odd_evens_dict["tsd_4"] = four_odd_evens[3]
  341. odd_evens_dict_rule['tsd_4'] = '双'
  342. except:
  343. odd_evens_dict["tss_4"] = ""
  344. odd_evens_dict_rule['tss_4'] = '单'
  345. odd_evens_dict["tsd_4"] = ""
  346. odd_evens_dict_rule['tsd_4'] = '双'
  347. # ----------------------------------------球队得分最后一位数分割线---------------------------------------------------------
  348. # 球队得分最后一位数 主队
  349. last_numbers_dict = {}
  350. try:
  351. last_numbers = result["p-o"][0]['o']
  352. last_home = {}
  353. for last_number in last_numbers:
  354. last_home[last_number[0]] = last_number[2]
  355. except:
  356. last_home = {}
  357. last_numbers_dict["last_home"] = last_home
  358. # 球队得分最后一位数 客队
  359. try:
  360. new_last_numbers = result["p-o"][1]['o']
  361. last_guest = {}
  362. for new_last_number in new_last_numbers:
  363. last_guest[new_last_number[0]] = new_last_number[2]
  364. except:
  365. last_guest = {}
  366. last_numbers_dict["last_guest"] = last_guest
  367. # ------------------------------------------------------独赢分割线---------------------------------------------------------
  368. capots_dict = {}
  369. # 独赢
  370. try:
  371. capots = result['o']["ml"]["v"]
  372. capot_list = [capots[i] for i in range(len(capots)) if i % 2 == 1]
  373. capot_home = capot_list[0]
  374. capot_guest = capot_list[1]
  375. capots_dict["ch"] = capot_home
  376. capots_dict["cg"] = capot_guest
  377. except:
  378. capots_dict["ch"] = ""
  379. capots_dict["cg"] = ""
  380. # 上半场独赢
  381. try:
  382. half_capots = result['o']["ml1st"]["v"]
  383. half_capot_list = [half_capots[i] for i in range(len(half_capots)) if i % 2 == 1]
  384. half_capot_home = half_capot_list[0]
  385. half_capot_guest = half_capot_list[1]
  386. capots_dict["ch_h"] = half_capot_home
  387. capots_dict["cg_h"] = half_capot_guest
  388. except:
  389. capots_dict["ch_h"] = ""
  390. capots_dict["cg_h"] = ""
  391. # 第一节独赢
  392. try:
  393. one_capots = result['o']["mlq1"]["v"]
  394. one_capot_list = [one_capots[i] for i in range(len(one_capots)) if i % 2 == 1]
  395. one_capot_home = one_capot_list[0]
  396. one_capot_guest = one_capot_list[1]
  397. capots_dict["ch_1"] = one_capot_home
  398. capots_dict["cg_1"] = one_capot_guest
  399. except:
  400. capots_dict["ch_1"] = ""
  401. capots_dict["cg_1"] = ""
  402. # 第二节独赢
  403. try:
  404. two_capots = result['o']["mlq2"]["v"]
  405. two_capot_list = [two_capots[i] for i in range(len(two_capots)) if i % 2 == 1]
  406. two_capot_home = two_capot_list[0]
  407. two_capot_guest = two_capot_list[1]
  408. capots_dict["ch_2"] = two_capot_home
  409. capots_dict["cg_2"] = two_capot_guest
  410. except:
  411. capots_dict["ch_2"] = ""
  412. capots_dict["cg_2"] = ""
  413. # 第三节独赢
  414. try:
  415. three_capots = result['o']["mlq3"]["v"]
  416. three_capot_list = [three_capots[i] for i in range(len(three_capots)) if i % 2 == 1]
  417. three_capot_home = three_capot_list[0]
  418. three_capot_guest = three_capot_list[1]
  419. capots_dict["ch_3"] = three_capot_home
  420. capots_dict["cg_3"] = three_capot_guest
  421. except:
  422. capots_dict["ch_3"] = ""
  423. capots_dict["cg_3"] = ""
  424. # 第四节独赢
  425. try:
  426. four_capots = result['o']["mlq2"]["v"]
  427. four_capot_list = [four_capots[i] for i in range(len(four_capots)) if i % 2 == 1]
  428. four_capot_home = four_capot_list[0]
  429. four_capot_guest = four_capot_list[1]
  430. capots_dict["ch_4"] = four_capot_home
  431. capots_dict["cg_4"] = four_capot_guest
  432. except:
  433. capots_dict["ch_4"] = ""
  434. capots_dict["cg_4"] = ""
  435. # ---------------------------------------------------华丽分割线列表es[1]--------------------------------------------------
  436. # 球队得分大/小 全场主队 home
  437. team_scores_dict = {}
  438. team_scores_dict_rule = {}
  439. try:
  440. score_home = new_data[1]
  441. except:
  442. score_home = ""
  443. if score_home:
  444. try:
  445. score_homes = score_home["o"]["ou"]['v']
  446. score_home_big_rule, score_home_big, score_home_small_rule, score_home_small = rangqiu_daxiao(inner=score_homes)
  447. team_scores_dict_rule["tbhb"] = score_home_big_rule
  448. team_scores_dict["tbhb"] = score_home_big
  449. team_scores_dict_rule["tbhs"] = score_home_small_rule
  450. team_scores_dict["tbhs"] = score_home_small
  451. except:
  452. team_scores_dict_rule["tbhb"] = ""
  453. team_scores_dict["tbhb"] = ""
  454. team_scores_dict_rule["tbhs"] = ""
  455. team_scores_dict["tbhs"] = ""
  456. # 球队得分 上半场主队 home
  457. try:
  458. half_score_homes = score_home['o']['ou1st']['v']
  459. # 球队得分 上半场主队 大条件
  460. half_score_home_big_rule, half_score_home_big, half_score_home_small_rule, half_score_home_small = rangqiu_daxiao(
  461. inner=half_score_homes)
  462. team_scores_dict_rule["tbhb_h"] = half_score_home_big_rule
  463. team_scores_dict["tbhb_h"] = half_score_home_big
  464. team_scores_dict_rule["tbhs_h"] = half_score_home_small_rule
  465. team_scores_dict["tbhs_h"] = half_score_home_small
  466. except:
  467. team_scores_dict_rule["tbhb_h"] = ""
  468. team_scores_dict["tbhb_h"] = ""
  469. team_scores_dict_rule["tbhs_h"] = ""
  470. team_scores_dict["tbhs_h"] = ""
  471. # 球队得分:主队-大 / 小-第一节
  472. try:
  473. one_score_homes = score_home['o']["ouq1"]["v"]
  474. one_score_home_big_rule, one_score_home_big, one_score_home_small_rule, one_score_home_small = rangqiu_daxiao(
  475. inner=one_score_homes)
  476. team_scores_dict_rule["tbhb_1"] = one_score_home_big_rule
  477. team_scores_dict["tbhb_1"] = one_score_home_big
  478. team_scores_dict_rule["tbhs_1"] = one_score_home_small_rule
  479. team_scores_dict["tbhs_1"] = one_score_home_small
  480. except:
  481. team_scores_dict_rule["tbhb_1"] = ""
  482. team_scores_dict["tbhb_1"] = ""
  483. team_scores_dict_rule["tbhs_1"] = ""
  484. team_scores_dict["tbhs_1"] = ""
  485. # 球队得分:主队-大 / 小-第二节
  486. try:
  487. two_score_homes = score_home['o']["ouq2"]["v"]
  488. two_score_home_big_rule, two_score_home_big, two_score_home_small_rule, two_score_home_small = rangqiu_daxiao(
  489. inner=two_score_homes)
  490. team_scores_dict_rule["tbhb_2"] = two_score_home_big_rule
  491. team_scores_dict["tbhb_2"] = two_score_home_big
  492. team_scores_dict_rule["tbhs_2"] = two_score_home_small_rule
  493. team_scores_dict["tbhs_2"] = two_score_home_small
  494. except:
  495. team_scores_dict_rule["tbhb_2"] = ""
  496. team_scores_dict["tbhb_2"] = ""
  497. team_scores_dict_rule["tbhs_2"] = ""
  498. team_scores_dict["tbhs_2"] = ""
  499. # 球队得分:主队-大 / 小-第三节
  500. try:
  501. three_score_homes = score_home['o']["ouq3"]["v"]
  502. three_score_home_big_rule, three_score_home_big, three_score_home_small_rule, three_score_home_small = rangqiu_daxiao(
  503. inner=three_score_homes)
  504. team_scores_dict_rule["tbhb_3"] = three_score_home_big_rule
  505. team_scores_dict["tbhb_3"] = three_score_home_big
  506. team_scores_dict_rule["tbhs_3"] = three_score_home_small_rule
  507. team_scores_dict["tbhs_3"] = three_score_home_small
  508. except:
  509. team_scores_dict_rule["tbhb_3"] = ""
  510. team_scores_dict["tbhb_3"] = ""
  511. team_scores_dict_rule["tbhs_3"] = ""
  512. team_scores_dict["tbhs_3"] = ""
  513. # 球队得分:主队-大 / 小-第四节
  514. try:
  515. four_score_homes = score_home['o']["ouq4"]["v"]
  516. four_score_home_big_rule, four_score_home_big, four_score_home_small_rule, four_score_home_small = rangqiu_daxiao(
  517. inner=four_score_homes)
  518. team_scores_dict_rule["tbhb_4"] = four_score_home_big_rule
  519. team_scores_dict["tbhb_4"] = four_score_home_big
  520. team_scores_dict_rule["tbhs_4"] = four_score_home_small_rule
  521. team_scores_dict["tbhs_4"] = four_score_home_small
  522. except:
  523. team_scores_dict_rule["tbhs_4"] = ""
  524. team_scores_dict["tbhb_4"] = ""
  525. team_scores_dict_rule["tbhs_4"] = ""
  526. team_scores_dict["tbhs_4"] = ""
  527. # ---------------------------------------------------华丽分割线列表es[2]--------------------------------------------------
  528. # 球队得分 客队 guest
  529. try:
  530. score_guest = new_data[2]
  531. except:
  532. score_guest = ""
  533. if score_guest:
  534. try:
  535. # 球队得分: 大 / 小
  536. score_guests = score_guest["o"]["ou"]['v']
  537. score_guest_big_rule, score_guest_big, score_guest_small_rule, score_guest_small = rangqiu_daxiao(inner=score_guests)
  538. team_scores_dict_rule["tbgb"] = score_guest_big_rule
  539. team_scores_dict["tbgb"] = score_guest_big
  540. team_scores_dict_rule["tbgs"] = score_guest_small_rule
  541. team_scores_dict["tbgs"] = score_guest_small
  542. except:
  543. team_scores_dict_rule["tbgb"] = ""
  544. team_scores_dict["tbgb"] = ""
  545. team_scores_dict_rule["tbgs"] = ""
  546. team_scores_dict["tbgs"] = ""
  547. # 球队得分 上半场客队 guest
  548. try:
  549. half_score_guests = score_guest["o"]['ou1st']['v']
  550. half_score_guest_big_rule, half_score_guest_big, half_score_guest_small_rule, half_score_guest_small = rangqiu_daxiao(
  551. inner=half_score_guests)
  552. team_scores_dict_rule["tbgb_h"] = half_score_guest_big_rule
  553. team_scores_dict["tbgb_h"] = half_score_guest_big
  554. team_scores_dict_rule["tbgs_h"] = half_score_guest_small_rule
  555. team_scores_dict["tbgs_h"] = half_score_guest_small
  556. except:
  557. team_scores_dict_rule["tbgb_h"] = ""
  558. team_scores_dict["tbgb_h"] = ""
  559. team_scores_dict_rule["tbgs_h"] = ""
  560. team_scores_dict["tbgs_h"] = ""
  561. # 球队得分第一节
  562. try:
  563. one_score_guests = score_guest["o"]['ouq1']['v']
  564. one_score_guest_big_rule, one_score_guest_big, one_score_guest_small_rule, one_score_guest_small = rangqiu_daxiao(
  565. inner=one_score_guests)
  566. team_scores_dict_rule["tbgb_1"] = one_score_guest_big_rule
  567. team_scores_dict["tbgb_1"] = one_score_guest_big
  568. team_scores_dict_rule["tbgs_1"] = one_score_guest_small_rule
  569. team_scores_dict["tbgs_1"] = one_score_guest_small
  570. except:
  571. team_scores_dict_rule["tbgb_1"] = ""
  572. team_scores_dict["tbgb_1"] = ""
  573. team_scores_dict_rule["tbgs_1"] = ""
  574. team_scores_dict["tbgs_1"] = ""
  575. # 球队得分第二节
  576. try:
  577. two_score_guests = score_guest["o"]['ouq2']['v']
  578. two_score_guest_big_rule, two_score_guest_big, two_score_guest_small_rule, two_score_guest_small = rangqiu_daxiao(
  579. inner=two_score_guests)
  580. team_scores_dict_rule["tbgb_2"] = two_score_guest_big_rule
  581. team_scores_dict["tbgb_2"] = two_score_guest_big
  582. team_scores_dict_rule["tbgs_2"] = two_score_guest_small_rule
  583. team_scores_dict["tbgs_2"] = two_score_guest_small
  584. except:
  585. team_scores_dict_rule["tbgb_2"] = ""
  586. team_scores_dict["tbgb_2"] = ""
  587. team_scores_dict_rule["tbgs_2"] = ""
  588. team_scores_dict["tbgs_2"] = ""
  589. # 球队得分第三节
  590. try:
  591. three_score_guests = score_guest["o"]['ouq3']['v']
  592. three_score_guest_big_rule, three_score_guest_big, three_score_guest_small_rule, three_score_guest_small = rangqiu_daxiao(
  593. inner=three_score_guests)
  594. team_scores_dict_rule["tbgb_3"] = three_score_guest_big_rule
  595. team_scores_dict["tbgb_3"] = three_score_guest_big
  596. team_scores_dict_rule["tbgs_3"] = three_score_guest_small_rule
  597. team_scores_dict["tbgs_3"] = three_score_guest_small
  598. except:
  599. team_scores_dict_rule["tbgb_3"] = ""
  600. team_scores_dict["tbgb_3"] = ""
  601. team_scores_dict_rule["tbgs_3"] = ""
  602. team_scores_dict["tbgs_3"] = ""
  603. # 球队得分第四节
  604. try:
  605. four_score_guests = score_guest["o"]['ouq4']['v']
  606. four_score_guest_big_rule, four_score_guest_big, four_score_guest_small_rule, four_score_guest_small = rangqiu_daxiao(
  607. inner=four_score_guests)
  608. team_scores_dict_rule["tbgb_4"] = four_score_guest_big_rule
  609. team_scores_dict["tbgb_4"] = four_score_guest_big
  610. team_scores_dict_rule["tbgs_4"] = four_score_guest_small_rule
  611. team_scores_dict["tbgs_4"] = four_score_guest_small
  612. except:
  613. team_scores_dict_rule["tbgb_4"] = ""
  614. team_scores_dict["tbgb_4"] = ""
  615. team_scores_dict_rule["tbgs_4"] = ""
  616. team_scores_dict["tbgs_4"] = ""
  617. # 篮球详细比分
  618. score_dict = {}
  619. try:
  620. # 当前节
  621. score_dict['schedule'] = result['sb']['cp']
  622. # 时间
  623. score_dict['r_time'] = result['sb']['ct']
  624. # "sc_1th_H": "15", //第一节 主队得分
  625. # "sc_1th_C": "16", //第一节 客队得分
  626. score_dict['sc_1th_H'] = result['sb']['ps'][2]['h']
  627. score_dict['sc_1th_C'] = result['sb']['ps'][2]['a']
  628. score_dict['sc_2th_H'] = result['sb']['ps'][3]['h']
  629. score_dict['sc_2th_C'] = result['sb']['ps'][3]['a']
  630. score_dict['sc_3th_H'] = result['sb']['ps'][4]['h']
  631. score_dict['sc_3th_C'] = result['sb']['ps'][4]['a']
  632. score_dict['sc_4th_H'] = result['sb']['ps'][5]['h']
  633. score_dict['sc_4th_C'] = result['sb']['ps'][5]['a']
  634. score_dict['overtime_H'] = result['sb']['ps'][7]['h']
  635. score_dict['overtime_C'] = result['sb']['ps'][7]['a']
  636. score_dict['half_H'] = result['sb']['ps'][0]['h']
  637. score_dict['half_C'] = result['sb']['ps'][0]['a']
  638. score_dict['full_H'] = result['sb']['ps'][6]['h']
  639. score_dict['full_C'] = result['sb']['ps'][6]['a']
  640. score_dict['whole_H'] = result['sb']['ps'][1]['h']
  641. score_dict['whole_C'] = result['sb']['ps'][1]['a']
  642. except:
  643. pass
  644. # 联赛id
  645. item['league_id'] = league_id
  646. # 联赛名
  647. item['league_name'] = league_name
  648. # item['result'] = result
  649. # 比赛id
  650. item['game_id'] = game_id
  651. # 球队1
  652. item['team_home'] = team_home
  653. # 球队2
  654. item['team_guest'] = team_guest
  655. # 数量(97>)
  656. item['number'] = number
  657. # 比赛状态
  658. item['zhuangtai'] = zhuangtai
  659. # 日期
  660. item['data_game'] = data_game
  661. # 开赛时间
  662. item['time_game'] = time_game
  663. # 队1分数
  664. item['score_home'] = score_home1
  665. # 队2分数
  666. item['score_guest'] = score_guest1
  667. # 第几节
  668. item['jijie'] = jijie
  669. # 球队得分
  670. item['qiudui'] = qiudui
  671. item['concede'] = concedes_dict
  672. item['concede_rule'] = concedes_dict_rule
  673. item['odd_even'] = odd_evens_dict
  674. item['odd_even_rule'] = odd_evens_dict_rule
  675. item['total_size'] = total_sizes_dict
  676. item['total_size_rule'] = total_sizes_dict_rule
  677. item['last_number'] = last_numbers_dict
  678. item['capot'] = capots_dict
  679. item['team_score'] = team_scores_dict
  680. item['team_score_rule'] = team_scores_dict_rule
  681. item['score_dict'] = score_dict
  682. yield item