roll_lanqiu.py 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699
  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. # 比赛id
  71. game_id = str(result['k'])
  72. # 球队1
  73. team_home = result['i'][0]
  74. # 球队2
  75. team_guest = result['i'][1]
  76. # 数量(97>)
  77. number = result['i'][2]
  78. # 比赛状态
  79. zhuangtai = result['i'][3]
  80. # 日期
  81. data_game = result['i'][4]
  82. # 开赛时间 滚球实际只有一个进行时间
  83. # time_game = result['i'][5]
  84. time_game = result['sb']['ct']
  85. # 队1分数
  86. score_home1 = result['i'][10]
  87. # 队2分数
  88. score_guest1 = result['i'][11]
  89. # 第几节
  90. jijie = result['i'][12]
  91. # 球队得分
  92. qiudui = result['pci'].get('ctn', "")
  93. # ----------------------------------------让球分割线---------------------------------------------------------------------------
  94. concedes_dict = {}
  95. concedes_dict_rule = {}
  96. try:
  97. concedes = result['o']["ah"]["v"]
  98. # print(concedes)
  99. # 主队让球条件,主队让球赔率,客队让球条件,客队让球赔率
  100. concede_home_rule,concede_home,concede_guest_rule,concede_guest=rangqiu_daxiao(inner=concedes)
  101. concedes_dict_rule['concede_home'] = concede_home_rule
  102. concedes_dict['concede_home'] = concede_home
  103. concedes_dict_rule['concede_guest'] = concede_guest_rule
  104. concedes_dict['concede_guest'] = concede_guest
  105. except:
  106. concedes_dict_rule['concede_home'] = ""
  107. concedes_dict['concede_home'] = ""
  108. concedes_dict_rule['concede_guest'] = ""
  109. concedes_dict['concede_guest'] = ""
  110. # print(concedes_dict)
  111. try:
  112. half_concedes = result['o']["ah1st"]["v"]
  113. # 上半场 主队让球条件
  114. half_concede_home_rule, half_concede_home, half_concede_guest_rule, half_concede_guest=rangqiu_daxiao(inner=half_concedes)
  115. concedes_dict_rule['half_concede_home'] = half_concede_home_rule
  116. concedes_dict['half_concede_home'] = half_concede_home
  117. concedes_dict_rule['half_concede_guest'] = half_concede_guest_rule
  118. concedes_dict['half_concede_guest'] = half_concede_guest
  119. except:
  120. concedes_dict_rule['half_concede_home'] = ""
  121. concedes_dict['half_concede_home'] = ""
  122. concedes_dict_rule['half_concede_guest'] = ""
  123. concedes_dict['half_concede_guest'] = ""
  124. # 第一节让球
  125. try:
  126. one_concedes = result['o']["ahq1"]["v"]
  127. one_concede_home_rule,one_concede_home,one_concede_guest_rule,one_concede_guest = rangqiu_daxiao(inner=one_concedes)
  128. concedes_dict_rule['one_concede_home'] = one_concede_home_rule
  129. concedes_dict['one_concede_home'] = one_concede_home
  130. concedes_dict_rule['one_concede_guest'] = one_concede_guest_rule
  131. concedes_dict['one_concede_guest'] = one_concede_guest
  132. except:
  133. concedes_dict_rule['one_concede_home'] = ""
  134. concedes_dict['one_concede_home'] = ""
  135. concedes_dict_rule['one_concede_guest'] = ""
  136. concedes_dict['one_concede_guest'] = ""
  137. # 第二节让球
  138. try:
  139. two_concedes = result['o']["ahq2"]["v"]
  140. two_concede_home_rule,two_concede_home,two_concede_guest_rule,two_concede_guest = rangqiu_daxiao(inner=two_concedes)
  141. concedes_dict_rule['two_concede_home'] = two_concede_home_rule
  142. concedes_dict['two_concede_home'] = two_concede_home
  143. concedes_dict_rule['two_concede_guest'] = two_concede_guest_rule
  144. concedes_dict['two_concede_guest'] = two_concede_guest
  145. except:
  146. concedes_dict_rule['two_concede_home'] = ""
  147. concedes_dict['two_concede_home'] = ""
  148. concedes_dict_rule['two_concede_guest'] = ""
  149. concedes_dict['two_concede_guest'] = ""
  150. # 第三节让球
  151. try:
  152. three_concedes = result['o']["ahq3"]["v"]
  153. three_concede_home_rule,three_concede_home,three_concede_guest_rule,three_concede_guest = rangqiu_daxiao(inner=three_concedes)
  154. concedes_dict_rule['three_concede_home'] = three_concede_home_rule
  155. concedes_dict['three_concede_home'] = three_concede_home
  156. concedes_dict_rule['three_concede_guest'] = three_concede_guest_rule
  157. concedes_dict['three_concede_guest'] = three_concede_guest
  158. except:
  159. concedes_dict_rule['three_concede_home'] = ""
  160. concedes_dict['three_concede_home'] = ""
  161. concedes_dict_rule['three_concede_guest'] = ""
  162. concedes_dict['three_concede_guest'] = ""
  163. # 第四节让球
  164. try:
  165. four_concedes = result['o']["ahq4"]["v"]
  166. four_concede_home_rule,four_concede_home,four_concede_guest_rule,four_concede_guest = rangqiu_daxiao(inner=four_concedes)
  167. concedes_dict_rule['four_concede_home'] = four_concede_home_rule
  168. concedes_dict['four_concede_home'] = four_concede_home
  169. concedes_dict_rule['four_concede_guest'] = four_concede_guest_rule
  170. concedes_dict['four_concede_guest'] = four_concede_guest
  171. except:
  172. concedes_dict_rule['four_concede_home'] = ""
  173. concedes_dict['four_concede_home'] = ""
  174. concedes_dict_rule['four_concede_guest'] = ""
  175. concedes_dict['four_concede_guest'] = ""
  176. # ----------------------------------------总分大小分割线 - ---------------------------------------------------------------
  177. # 全场总分大小
  178. total_sizes_dict = {}
  179. total_sizes_dict_rule = {}
  180. try:
  181. total_sizes = result['o']["ou"]["v"]
  182. total_sizes_big_rule,total_sizes_big,total_sizes_small_rule,total_sizes_small = rangqiu_daxiao(inner=total_sizes)
  183. total_sizes_dict_rule["total_sizes_big"] = total_sizes_big_rule
  184. total_sizes_dict["total_sizes_big"] = total_sizes_big
  185. total_sizes_dict_rule["total_sizes_small"] = total_sizes_small_rule
  186. total_sizes_dict["total_sizes_small"] = total_sizes_small
  187. except:
  188. total_sizes_dict_rule["total_sizes_big"] = ""
  189. total_sizes_dict["total_sizes_big"] = ""
  190. total_sizes_dict_rule["total_sizes_small"] = ""
  191. total_sizes_dict["total_sizes_small"] = ""
  192. # 上半场总分大小
  193. try:
  194. half_total_sizes = result['o']["ou1st"]["v"]
  195. half_total_sizes_big_rule,half_total_sizes_big,half_total_sizes_small_rule,half_total_sizes_small = rangqiu_daxiao(inner=half_total_sizes)
  196. total_sizes_dict_rule["half_total_sizes_big"] = half_total_sizes_big_rule
  197. total_sizes_dict["half_total_sizes_big"] = half_total_sizes_big
  198. total_sizes_dict_rule["half_total_sizes_small"] = half_total_sizes_small_rule
  199. total_sizes_dict["half_total_sizes_small"] = half_total_sizes_small
  200. except:
  201. total_sizes_dict_rule["half_total_sizes_big"] = ""
  202. total_sizes_dict["half_total_sizes_big"] = ""
  203. total_sizes_dict_rule["half_total_sizes_small"] = ""
  204. total_sizes_dict["half_total_sizes_small"] = ""
  205. # 第一节总分大小
  206. try:
  207. one_total_sizes = result['o']["ou1st"]["v"]
  208. one_total_sizes_big_rule,one_total_sizes_big,one_total_sizes_small_rule,one_total_sizes_small = rangqiu_daxiao(inner=one_total_sizes)
  209. total_sizes_dict_rule["one_total_sizes_big"] = one_total_sizes_big_rule
  210. total_sizes_dict["one_total_sizes_big"] = one_total_sizes_big
  211. total_sizes_dict_rule["one_total_sizes_small"] = one_total_sizes_small_rule
  212. total_sizes_dict["one_total_sizes_small"] = one_total_sizes_small
  213. except:
  214. total_sizes_dict_rule["one_total_sizes_big"] = ""
  215. total_sizes_dict["one_total_sizes_big"] = ""
  216. total_sizes_dict_rule["one_total_sizes_small"] = ""
  217. total_sizes_dict["one_total_sizes_small"] = ""
  218. # 第二节场总分大小
  219. try:
  220. two_total_sizes = result['o']["ou2st"]["v"]
  221. two_total_sizes_big_rule,two_total_sizes_big,two_total_sizes_small_rule,two_total_sizes_small = rangqiu_daxiao(inner=two_total_sizes)
  222. total_sizes_dict_rule["two_total_sizes_big"] = two_total_sizes_big_rule
  223. total_sizes_dict["two_total_sizes_big"] = two_total_sizes_big
  224. total_sizes_dict_rule["two_total_sizes_small"] = two_total_sizes_small_rule
  225. total_sizes_dict["two_total_sizes_small"] = two_total_sizes_small
  226. except:
  227. total_sizes_dict_rule["two_total_sizes_big"] = ""
  228. total_sizes_dict["two_total_sizes_big"] = ""
  229. total_sizes_dict_rule["two_total_sizes_small"] = ""
  230. total_sizes_dict["two_total_sizes_small"] = ""
  231. # 第三节总分大小
  232. try:
  233. three_total_sizes = result['o']["ou3st"]["v"]
  234. three_total_sizes_big_rule,three_total_sizes_big,three_total_sizes_small_rule,three_total_sizes_small = rangqiu_daxiao(inner=three_total_sizes)
  235. total_sizes_dict_rule["three_total_sizes_big"] = three_total_sizes_big_rule
  236. total_sizes_dict["three_total_sizes_big"] = three_total_sizes_big
  237. total_sizes_dict_rule["three_total_sizes_small"] = three_total_sizes_small_rule
  238. total_sizes_dict["three_total_sizes_small"] = three_total_sizes_small
  239. except:
  240. total_sizes_dict_rule["three_total_sizes_big"] = ""
  241. total_sizes_dict["three_total_sizes_big"] = ""
  242. total_sizes_dict_rule["three_total_sizes_small"] = ""
  243. total_sizes_dict["three_total_sizes_small"] = ""
  244. # 第四节总分大小
  245. try:
  246. four_total_sizes = result['o']["ou4st"]["v"]
  247. four_total_sizes_big_rule,four_total_sizes_big,four_total_sizes_small_rule,four_total_sizes_small = rangqiu_daxiao(inner=four_total_sizes)
  248. total_sizes_dict_rule["four_total_sizes_big"] = four_total_sizes_big_rule
  249. total_sizes_dict["four_total_sizes_big"] = four_total_sizes_big
  250. total_sizes_dict_rule["four_total_sizes_small"] = four_total_sizes_small_rule
  251. total_sizes_dict["four_total_sizes_small"] = four_total_sizes_small
  252. except:
  253. total_sizes_dict_rule["four_total_sizes_big"] = ""
  254. total_sizes_dict["four_total_sizes_big"] = ""
  255. total_sizes_dict_rule["four_total_sizes_small"] = ""
  256. total_sizes_dict["four_total_sizes_small"] = ""
  257. # ----------------------------------------总分单双分割线------------------------------------------------------------------
  258. # 全场 总分单双
  259. odd_evens_dict = {}
  260. odd_evens_dict_rule = {}
  261. try:
  262. odd_evens = result['o']["oe"]["v"]
  263. # 全场 总分单, 全场 总分双
  264. odd_evens_dict["two_sides_single"] = odd_evens[1]
  265. odd_evens_dict_rule['two_sides_single'] = '单'
  266. odd_evens_dict["two_sides_double"] = odd_evens[3]
  267. odd_evens_dict_rule['two_sides_double'] = '双'
  268. except:
  269. odd_evens_dict["two_sides_single"] = ""
  270. odd_evens_dict_rule['two_sides_single'] = '单'
  271. odd_evens_dict["two_sides_double"] = ""
  272. odd_evens_dict_rule['two_sides_double'] = '双'
  273. # 上半场全场 总分单双
  274. try:
  275. half_odd_evens = result['o']["oe1st"]["v"]
  276. # 上半场 总分单, 上半场 总分双
  277. odd_evens_dict["half_two_sides_single"] = half_odd_evens[1]
  278. odd_evens_dict_rule['half_two_sides_single'] = '单'
  279. odd_evens_dict["half_two_sides_double"] = half_odd_evens[3]
  280. odd_evens_dict_rule['half_two_sides_double'] = '双'
  281. except:
  282. # half_odd_even_odd = ""
  283. # half_odd_even_even = ""
  284. odd_evens_dict["half_two_sides_single"] = ""
  285. odd_evens_dict_rule['half_two_sides_single'] = '单'
  286. odd_evens_dict["half_two_sides_double"] = ""
  287. odd_evens_dict_rule['half_two_sides_double'] = '双'
  288. # 总分:单/双-第一节
  289. try:
  290. one_odd_evens = result['o']["oeq1"]["v"]
  291. odd_evens_dict["one_two_sides_single"] = one_odd_evens[1]
  292. odd_evens_dict_rule['one_two_sides_single'] = '单'
  293. odd_evens_dict["one_two_sides_double"] = one_odd_evens[3]
  294. odd_evens_dict_rule['one_two_sides_double'] = '双'
  295. except:
  296. odd_evens_dict["one_two_sides_single"] = ""
  297. odd_evens_dict_rule['one_two_sides_single'] = '单'
  298. odd_evens_dict["one_two_sides_double"] = ""
  299. odd_evens_dict_rule['one_two_sides_double'] = '双'
  300. # 总分:单/双-第二节
  301. try:
  302. two_odd_evens = result['o']["oeq2"]["v"]
  303. odd_evens_dict["two_two_sides_single"] = two_odd_evens[1]
  304. odd_evens_dict_rule['two_two_sides_single'] = '单'
  305. odd_evens_dict["two_two_sides_double"] = two_odd_evens[3]
  306. odd_evens_dict_rule['two_two_sides_double'] = '双'
  307. except:
  308. # two_odd_even_odd = ""
  309. # two_odd_even_even = ""
  310. odd_evens_dict["two_two_sides_single"] = ""
  311. odd_evens_dict_rule['two_two_sides_single'] = '单'
  312. odd_evens_dict["two_two_sides_double"] = ""
  313. odd_evens_dict_rule['two_two_sides_double'] = '双'
  314. # 总分:单/双-第三节
  315. try:
  316. three_odd_evens = result['o']["oeq3"]["v"]
  317. odd_evens_dict["three_two_sides_single"] = three_odd_evens[1]
  318. odd_evens_dict_rule['three_two_sides_single'] = '单'
  319. odd_evens_dict["three_two_sides_double"] = three_odd_evens[3]
  320. odd_evens_dict_rule['three_two_sides_double'] = '双'
  321. except:
  322. odd_evens_dict["three_two_sides_single"] = ""
  323. odd_evens_dict_rule['three_two_sides_single'] = '单'
  324. odd_evens_dict["three_two_sides_double"] = ""
  325. odd_evens_dict_rule['three_two_sides_double'] = '双'
  326. # 总分:单/双-第四节
  327. try:
  328. four_odd_evens = result['o']["oeq4"]["v"]
  329. odd_evens_dict["four_two_sides_single"] = four_odd_evens[1]
  330. odd_evens_dict_rule['four_two_sides_single'] = '单'
  331. odd_evens_dict["four_two_sides_double"] = four_odd_evens[3]
  332. odd_evens_dict_rule['four_two_sides_double'] = '双'
  333. except:
  334. odd_evens_dict["four_two_sides_single"] = ""
  335. odd_evens_dict_rule['four_two_sides_single'] = '单'
  336. odd_evens_dict["four_two_sides_double"] = ""
  337. odd_evens_dict_rule['four_two_sides_double'] = '双'
  338. # ----------------------------------------球队得分最后一位数分割线---------------------------------------------------------
  339. # 球队得分最后一位数 主队
  340. last_numbers_dict = {}
  341. try:
  342. last_numbers = result["p-o"][0]['o']
  343. last_home = {}
  344. for last_number in last_numbers:
  345. last_home[last_number[0]] = last_number[2]
  346. except:
  347. last_home = {}
  348. last_numbers_dict["last_home"] = last_home
  349. # 球队得分最后一位数 客队
  350. try:
  351. new_last_numbers = result["p-o"][1]['o']
  352. last_guest = {}
  353. for new_last_number in new_last_numbers:
  354. last_guest[new_last_number[0]] = new_last_number[2]
  355. except:
  356. last_guest = {}
  357. last_numbers_dict["last_guest"] = last_guest
  358. # ------------------------------------------------------独赢分割线---------------------------------------------------------
  359. capots_dict = {}
  360. # 独赢
  361. try:
  362. capots = result['o']["ml"]["v"]
  363. capot_list = [capots[i] for i in range(len(capots)) if i % 2 == 1]
  364. capot_home = capot_list[0]
  365. capot_guest = capot_list[1]
  366. capots_dict["capot_home"] = capot_home
  367. capots_dict["capot_guest"] = capot_guest
  368. except:
  369. capots_dict["capot_home"] = ""
  370. capots_dict["capot_guest"] = ""
  371. # 上半场独赢
  372. try:
  373. half_capots = result['o']["ml1st"]["v"]
  374. half_capot_list = [half_capots[i] for i in range(len(half_capots)) if i % 2 == 1]
  375. half_capot_home = half_capot_list[0]
  376. half_capot_guest = half_capot_list[1]
  377. capots_dict["half_capot_home"] = half_capot_home
  378. capots_dict["half_capot_guest"] = half_capot_guest
  379. except:
  380. capots_dict["half_capot_home"] = ""
  381. capots_dict["half_capot_guest"] = ""
  382. # 第一节独赢
  383. try:
  384. one_capots = result['o']["mlq1"]["v"]
  385. one_capot_list = [one_capots[i] for i in range(len(one_capots)) if i % 2 == 1]
  386. one_capot_home = one_capot_list[0]
  387. one_capot_guest = one_capot_list[1]
  388. capots_dict["one_capot_home"] = one_capot_home
  389. capots_dict["one_capot_guest"] = one_capot_guest
  390. except:
  391. capots_dict["one_capot_home"] = ""
  392. capots_dict["one_capot_guest"] = ""
  393. # 第二节独赢
  394. try:
  395. two_capots = result['o']["mlq2"]["v"]
  396. two_capot_list = [two_capots[i] for i in range(len(two_capots)) if i % 2 == 1]
  397. two_capot_home = two_capot_list[0]
  398. two_capot_guest = two_capot_list[1]
  399. capots_dict["two_capot_home"] = two_capot_home
  400. capots_dict["two_capot_guest"] = two_capot_guest
  401. except:
  402. capots_dict["two_capot_home"] = ""
  403. capots_dict["two_capot_guest"] = ""
  404. # 第三节独赢
  405. try:
  406. three_capots = result['o']["mlq3"]["v"]
  407. three_capot_list = [three_capots[i] for i in range(len(three_capots)) if i % 2 == 1]
  408. three_capot_home = three_capot_list[0]
  409. three_capot_guest = three_capot_list[1]
  410. capots_dict["three_capot_home"] = three_capot_home
  411. capots_dict["three_capot_guest"] = three_capot_guest
  412. except:
  413. capots_dict["three_capot_home"] = ""
  414. capots_dict["three_capot_guest"] = ""
  415. # 第四节独赢
  416. try:
  417. four_capots = result['o']["mlq2"]["v"]
  418. four_capot_list = [four_capots[i] for i in range(len(four_capots)) if i % 2 == 1]
  419. four_capot_home = four_capot_list[0]
  420. four_capot_guest = four_capot_list[1]
  421. capots_dict["four_capot_home"] = four_capot_home
  422. capots_dict["four_capot_guest"] = four_capot_guest
  423. except:
  424. capots_dict["four_capot_home"] = ""
  425. capots_dict["four_capot_guest"] = ""
  426. # ---------------------------------------------------华丽分割线列表es[1]--------------------------------------------------
  427. # 球队得分 全场主队 home
  428. team_scores_dict = {}
  429. team_scores_dict_rule = {}
  430. try:
  431. score_home = new_data[1]
  432. except:
  433. score_home = ""
  434. if score_home:
  435. try:
  436. score_homes = score_home["o"]["ou"]['v']
  437. score_home_big_rule,score_home_big,score_home_small_rule,score_home_small = rangqiu_daxiao(inner=score_homes)
  438. team_scores_dict_rule["score_home_big"] = score_home_big_rule
  439. team_scores_dict["score_home_big"] = score_home_big
  440. team_scores_dict_rule["score_home_small"] = score_home_small_rule
  441. team_scores_dict["score_home_small"] = score_home_small
  442. except:
  443. team_scores_dict_rule["score_home_big"] = ""
  444. team_scores_dict["score_home_big"] = ""
  445. team_scores_dict_rule["score_home_small"] = ""
  446. team_scores_dict["score_home_small"] = ""
  447. # 球队得分 上半场主队 home
  448. try:
  449. half_score_homes = score_home['o']['ou1st']['v']
  450. # 球队得分 上半场主队 大条件
  451. half_score_home_big_rule,half_score_home_big,half_score_home_small_rule,half_score_home_small = rangqiu_daxiao(inner=half_score_homes)
  452. team_scores_dict_rule["half_score_home_big"] = half_score_home_big_rule
  453. team_scores_dict["half_score_home_big"] = half_score_home_big
  454. team_scores_dict_rule["half_score_home_small"] = half_score_home_small_rule
  455. team_scores_dict["half_score_home_small"] = half_score_home_small
  456. except:
  457. team_scores_dict_rule["half_score_home_big"] = ""
  458. team_scores_dict["half_score_home_big"] = ""
  459. team_scores_dict_rule["half_score_home_small"] = ""
  460. team_scores_dict["half_score_home_small"] = ""
  461. # 球队得分:主队-大 / 小-第一节
  462. try:
  463. one_score_homes = score_home['o']["ouq1"]["v"]
  464. one_score_home_big_rule,one_score_home_big,one_score_home_small_rule,one_score_home_small = rangqiu_daxiao(inner=one_score_homes)
  465. team_scores_dict_rule["one_score_home_big"] = one_score_home_big_rule
  466. team_scores_dict["one_score_home_big"] = one_score_home_big
  467. team_scores_dict_rule["one_score_home_small"] = one_score_home_small_rule
  468. team_scores_dict["one_score_home_small"] = one_score_home_small
  469. except:
  470. team_scores_dict_rule["one_score_home_big"] = ""
  471. team_scores_dict["one_score_home_big"] = ""
  472. team_scores_dict_rule["one_score_home_small"] = ""
  473. team_scores_dict["one_score_home_small"] = ""
  474. # 球队得分:主队-大 / 小-第二节
  475. try:
  476. two_score_homes = score_home['o']["ouq2"]["v"]
  477. two_score_home_big_rule,two_score_home_big,two_score_home_small_rule,two_score_home_small = rangqiu_daxiao(inner=two_score_homes)
  478. team_scores_dict_rule["two_score_home_big"] = two_score_home_big_rule
  479. team_scores_dict["two_score_home_big"] = two_score_home_big
  480. team_scores_dict_rule["two_score_home_small"] = two_score_home_small_rule
  481. team_scores_dict["two_score_home_small"] = two_score_home_small
  482. except:
  483. team_scores_dict_rule["two_score_home_big"] = ""
  484. team_scores_dict["two_score_home_big"] = ""
  485. team_scores_dict_rule["two_score_home_small"] = ""
  486. team_scores_dict["two_score_home_small"] = ""
  487. # 球队得分:主队-大 / 小-第三节
  488. try:
  489. three_score_homes = score_home['o']["ouq3"]["v"]
  490. three_score_home_big_rule,three_score_home_big,three_score_home_small_rule,three_score_home_small = rangqiu_daxiao(inner=three_score_homes)
  491. team_scores_dict_rule["three_score_home_big"] = three_score_home_big_rule
  492. team_scores_dict["three_score_home_big"] = three_score_home_big
  493. team_scores_dict_rule["three_score_home_small"] = three_score_home_small_rule
  494. team_scores_dict["three_score_home_small"] = three_score_home_small
  495. except:
  496. team_scores_dict_rule["three_score_home_big"] = ""
  497. team_scores_dict["three_score_home_big"] = ""
  498. team_scores_dict_rule["three_score_home_small"] = ""
  499. team_scores_dict["three_score_home_small"] = ""
  500. # 球队得分:主队-大 / 小-第四节
  501. try:
  502. four_score_homes = score_home['o']["ouq4"]["v"]
  503. four_score_home_big_rule,four_score_home_big,four_score_home_small_rule,four_score_home_small = rangqiu_daxiao(inner=four_score_homes)
  504. team_scores_dict_rule["four_score_home_big"] = four_score_home_big_rule
  505. team_scores_dict["four_score_home_big"] = four_score_home_big
  506. team_scores_dict_rule["four_score_home_small"] = four_score_home_small_rule
  507. team_scores_dict["four_score_home_small"] = four_score_home_small
  508. except:
  509. team_scores_dict_rule["four_score_home_big"] = ""
  510. team_scores_dict["four_score_home_big"] = ""
  511. team_scores_dict_rule["four_score_home_small"] = ""
  512. team_scores_dict["four_score_home_small"] = ""
  513. # ---------------------------------------------------华丽分割线列表es[2]--------------------------------------------------
  514. # 球队得分 客队 guest
  515. try:
  516. score_guest = new_data[2]
  517. except:
  518. score_guest = ""
  519. if score_guest:
  520. try:
  521. # 球队得分: 大 / 小
  522. score_guests = score_guest["o"]["ou"]['v']
  523. score_guest_big_rule,score_guest_big,score_guest_small_rule,score_guest_small = rangqiu_daxiao(inner=score_guests)
  524. team_scores_dict_rule["score_guest_big"] = score_guest_big_rule
  525. team_scores_dict["score_guest_big"] = score_guest_big
  526. team_scores_dict_rule["score_guest_small"] = score_guest_small_rule
  527. team_scores_dict["score_guest_small"] = score_guest_small
  528. except:
  529. team_scores_dict_rule["score_guest_big"] = ""
  530. team_scores_dict["score_guest_big"] = ""
  531. team_scores_dict_rule["score_guest_small"] = ""
  532. team_scores_dict["score_guest_small"] = ""
  533. # 球队得分 上半场客队 guest
  534. try:
  535. half_score_guests = score_guest["o"]['ou1st']['v']
  536. half_score_guest_big_rule,half_score_guest_big,half_score_guest_small_rule,half_score_guest_small = rangqiu_daxiao(inner=half_score_guests)
  537. team_scores_dict_rule["half_score_guest_big"] = half_score_guest_big_rule
  538. team_scores_dict["half_score_guest_big"] = half_score_guest_big
  539. team_scores_dict_rule["half_score_guest_small"] = half_score_guest_small_rule
  540. team_scores_dict["half_score_guest_small"] = half_score_guest_small
  541. except:
  542. team_scores_dict_rule["half_score_guest_big"] = ""
  543. team_scores_dict["half_score_guest_big"] = ""
  544. team_scores_dict_rule["half_score_guest_small"] = ""
  545. team_scores_dict["half_score_guest_small"] = ""
  546. # 球队得分第一节
  547. try:
  548. one_score_guests = score_guest["o"]['ouq1']['v']
  549. one_score_guest_big_rule, one_score_guest_big, one_score_guest_small_rule, one_score_guest_small = rangqiu_daxiao(
  550. inner=one_score_guests)
  551. team_scores_dict_rule["one_score_guest_big"] = one_score_guest_big_rule
  552. team_scores_dict["one_score_guest_big"] = one_score_guest_big
  553. team_scores_dict_rule["one_score_guest_small"] = one_score_guest_small_rule
  554. team_scores_dict["one_score_guest_small"] = one_score_guest_small
  555. except:
  556. team_scores_dict_rule["one_score_guest_big"] = ""
  557. team_scores_dict["one_score_guest_big"] = ""
  558. team_scores_dict_rule["one_score_guest_small"] = ""
  559. team_scores_dict["one_score_guest_small"] = ""
  560. # 球队得分第二节
  561. try:
  562. two_score_guests = score_guest["o"]['ouq2']['v']
  563. two_score_guest_big_rule, two_score_guest_big, two_score_guest_small_rule, two_score_guest_small = rangqiu_daxiao(
  564. inner=two_score_guests)
  565. team_scores_dict_rule["two_score_guest_big"] = two_score_guest_big_rule
  566. team_scores_dict["two_score_guest_big"] = two_score_guest_big
  567. team_scores_dict_rule["two_score_guest_small"] = two_score_guest_small_rule
  568. team_scores_dict["two_score_guest_small"] = two_score_guest_small
  569. except:
  570. team_scores_dict_rule["two_score_guest_big"] = ""
  571. team_scores_dict["two_score_guest_big"] = ""
  572. team_scores_dict_rule["two_score_guest_small"] = ""
  573. team_scores_dict["two_score_guest_small"] = ""
  574. # 球队得分第三节
  575. try:
  576. three_score_guests = score_guest["o"]['ouq3']['v']
  577. three_score_guest_big_rule, three_score_guest_big, three_score_guest_small_rule, three_score_guest_small = rangqiu_daxiao(
  578. inner=three_score_guests)
  579. team_scores_dict_rule["three_score_guest_big"] = three_score_guest_big_rule
  580. team_scores_dict["three_score_guest_big"] = three_score_guest_big
  581. team_scores_dict_rule["three_score_guest_small"] = three_score_guest_small_rule
  582. team_scores_dict["three_score_guest_small"] = three_score_guest_small
  583. except:
  584. team_scores_dict_rule["three_score_guest_big"] = ""
  585. team_scores_dict["three_score_guest_big"] = ""
  586. team_scores_dict_rule["three_score_guest_small"] = ""
  587. team_scores_dict["three_score_guest_small"] = ""
  588. # 球队得分第四节
  589. try:
  590. four_score_guests = score_guest["o"]['ouq4']['v']
  591. four_score_guest_big_rule, four_score_guest_big, four_score_guest_small_rule, four_score_guest_small = rangqiu_daxiao(
  592. inner=four_score_guests)
  593. team_scores_dict_rule["four_score_guest_big"] = four_score_guest_big_rule
  594. team_scores_dict["four_score_guest_big"] = four_score_guest_big
  595. team_scores_dict_rule["four_score_guest_small"] = four_score_guest_small_rule
  596. team_scores_dict["four_score_guest_small"] = four_score_guest_small
  597. except:
  598. team_scores_dict_rule["four_score_guest_big"] = ""
  599. team_scores_dict["four_score_guest_big"] = ""
  600. team_scores_dict_rule["four_score_guest_small"] = ""
  601. team_scores_dict["four_score_guest_small"] = ""
  602. # 联赛id
  603. item['league_id'] = league_id
  604. # 联赛名
  605. item['league_name'] = league_name
  606. # item['result'] = result
  607. # 比赛id
  608. item['game_id'] = game_id
  609. # 球队1
  610. item['team_home'] = team_home
  611. # 球队2
  612. item['team_guest'] = team_guest
  613. # 数量(97>)
  614. item['number'] = number
  615. # 比赛状态
  616. item['zhuangtai'] = zhuangtai
  617. # 日期
  618. item['data_game'] = data_game
  619. # 开赛时间
  620. item['time_game'] = time_game
  621. # 队1分数
  622. item['score_home'] = score_home1
  623. # 队2分数
  624. item['score_guest'] = score_guest1
  625. # 第几节
  626. item['jijie'] = jijie
  627. # 球队得分
  628. item['qiudui'] = qiudui
  629. item['concede'] = concedes_dict
  630. item['concede_rule'] = concedes_dict_rule
  631. item['odd_even'] = odd_evens_dict
  632. item['odd_even_rule'] = odd_evens_dict_rule
  633. item['total_size'] = total_sizes_dict
  634. item['total_size_rule'] = total_sizes_dict_rule
  635. item['last_number'] = last_numbers_dict
  636. item['capot'] = capots_dict
  637. item['team_score'] = team_scores_dict
  638. item['team_score_rule'] = team_scores_dict_rule
  639. yield item