Где найти данные расписания NFL XML на 2020 год

Aug 16 2020

Я извлекал расписания из данных nfl xml с помощью модулей nflgame и nfldb, однако я заметил, что URL-адреса, созданные с помощью функции ниже, возвращают ошибку 404. Кто-нибудь еще испытал это недавно и знает, почему это так?

def schedule_url(year, stype, week):
    """
    Returns the NFL.com XML schedule URL. `year` should be an
    integer, `stype` should be one of the strings `PRE`, `REG` or
    `POST`, and `gsis_week` should be a value in the range
    `[0, 17]`.
    """
    xmlurl = 'http://www.nfl.com/ajax/scorestrip?'
    if stype == 'POST':
        week += 17
        if week == 21:  # NFL.com you so silly
            week += 1
    return '%sseason=%d&seasonType=%s&week=%d' % (xmlurl, year, stype, week)

schedule_url(2019, 'REG', 1)

Ответы

2 chitown88 Aug 17 2020 at 07:31

nfl.com реструктурировал свой сайт и API. nflgame сильно полагался на это, что теперь больше не работает. Вам нужно будет найти альтернативу для получения расписания НФЛ, текущих результатов, обновлений, игр и т. Д.

Вы можете получить расписание на конечных точках ESPN.

import requests
headers = {'User-Agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Mobile Safari/537.36'}
url = "http://site.api.espn.com/apis/site/v2/sports/football/nfl/scoreboard"
payload = {'week':'1'}

jsonData = requests.get(url, headers=headers, params=payload).json()
1 Amor Sep 04 2020 at 00:02

Это то, что я использую для получения баллов, так как старый больше не работает.

https://static.nfl.com/liveupdate/scorestrip/ss.xml

Используйте https://static.nfl.com/ajax/scorestrip? или просто замените часть www на static, и все готово.

rswayz Sep 15 2020 at 12:27

Также для будущих игр новый формат сайта:

https://static.nfl.com/ajax/scorestrip?season=2020&seasonType=REG&week=2