py_scripts/football/get_football_data.py

30 lines
1.0 KiB
Python

import requests
import json
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from datetime import date, datetime
from model.football_league import FootballLeague
_engine = create_engine("mysql+pymysql://test:123456@localhost/lottery?charset=utf8")
_DbSession = sessionmaker(bind=_engine)
db = _DbSession()
url = "https://webapi.sporttery.cn/gateway/jc/football/getMatchResultV1.qry?matchPage=1&matchBeginDate=2023-04-28&matchEndDate=2023-04-28&leagueId=&pageSize=30&pageNo=1&isFix=0&pcOrWap=1"
r = requests.get(url)
data = json.loads(r.text)
league_list = data["value"]["leagueList"]
for item in league_list:
result = db.query(FootballLeague).filter_by(league_name=item["leagueAbbName"]).first()
if result is None:
league = FootballLeague()
league.league_id = item["leagueId"]
league.league_name = item["leagueAbbName"]
league.league_all_name = item["leagueAllName"]
league.created_at = datetime.now()
db.add(league)
db.commit()
print(f"id:{league.id}")