fix:增加获取竞彩足球赔率数据模块

This commit is contained in:
chenwj113 2023-05-14 19:12:28 +08:00
parent d67e21c033
commit 9a621c5781
1 changed files with 65 additions and 0 deletions

65
lottery/football/jczq.py Normal file
View File

@ -0,0 +1,65 @@
import sys
sys.path.append("/root/documents/py_scripts")
from typing import Optional
from furl import furl
from requests_html import HTML, HTMLSession
class Jczq(object):
'''
竞彩足球赔率获取
'''
_base_url = furl("https://trade.500.com/jczq/?g=2")
def __init__(self, date_str):
self.session = HTMLSession()
self._base_url.args["date"] = date_str
def get_spf_odds(self, d: Optional[str]=None):
self._base_url.args["playid"] = 312
if d is not None:
self._base_url.args["date"] = d
# print(self._base_url.url)
r = self.session.get(self._base_url)
bet_trs = r.html.find("tr.bet-tb-tr")
print(len(bet_trs))
bet_more_trs = r.html.find("tr.bet-more-wrap")
print(len(bet_more_trs))
for tr in zip(bet_trs, bet_more_trs):
# 对应竞彩网matchId
match_id = tr[0].attrs["data-id"]
match_num = tr[0].attrs["data-matchnum"]
league_name = tr[0].attrs["data-simpleleague"]
home_name = tr[0].attrs["data-homesxname"]
away_name = tr[0].attrs["data-awaysxname"]
match_date = tr[0].attrs["data-matchdate"] + tr[0].attrs["data-matchtime"]
buyendtime = tr[0].attrs["data-buyendtime"]
rangqiu = tr[0].attrs["data-rangqiu"]
# 胜平负
nspf = tr[0].find("td.td-betbtn div.itm-rangB1", first=True)
betbtn_ok = nspf.find("p[class$='betbtn-ok']", first=True)
if betbtn_ok is not None:
result = betbtn_ok.attrs["data-value"]
nspf_odds = {i.attrs["data-value"]: i.attrs["data-sp"] for i in nspf.find("p.betbtn")}
# 让球胜平负
spf = tr[0].find("td.td-betbtn div.itm-rangB2", first=True)
rq_result = spf.find("p[class$='betbtn-ok']", first=True).attrs["data-value"]
spf_odds = {i.attrs["data-value"]: i.attrs["data-sp"] for i in spf.find("p.betbtn")}
# 半全场
bqc = tr[1].find("p[data-type='bqc']")
bqc_odds = {i.attrs["data-value"]: i.attrs["data-sp"] for i in bqc}
bqc_result = tr[1].find("p[class$='sbetbtn-ok'][data-type='bqc']", first=True).attrs["data-value"]
# 比分
bf = tr[1].find("p[data-type='bf']")
bf_odds = {i.attrs["data-value"]: i.attrs["data-sp"] for i in bf}
bf_result = tr[1].find("p[class$='sbetbtn-ok'][data-type='bf']", first=True).attrs["data-value"]
# 进球数
jqs = tr[1].find("p[data-type='jqs']")
jqs_odds = {i.attrs["data-value"]: i.attrs["data-sp"] for i in jqs}
jqs_result = tr[1].find("p[class$='sbetbtn-ok'][data-type='jqs']", first=True).attrs["data-value"]
print(f"{home_name}-{away_name} 赔率:{nspf_odds} 结果:{result}, 比分:{bf_result},比分赔率:{bf_odds}")
jczq = Jczq("2023-04-15")
jczq.get_spf_odds()