You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oddsportal赛事数据接口编码内容的解码方法求助

Oddsportal赛事数据接口编码内容的解码方法求助

我已经爬取Oddsportal的赛事赔率数据好几年了,之前一直都很顺利,但最近他们把接口返回的数据做了编码处理,我试了各种方法都没找到解码的路子,想求助大家有没有思路。

先给大家说下情况:

  • Oddsportal本来会提供多个博彩平台的赔率数据,现在他们的赛事数据接口返回的内容被编码了,原本应该是JSON格式的结果,现在拿到的是一串看不懂的长字符串。
  • 比如某场利物浦对阵曼城的英超赛事,对应的feed接口返回的内容就是编码后的状态,而且接口地址里的末尾部分(比如yj30c.dat里的中间字符)有时候会变动。

我写了一段Python脚本来获取这个接口的数据,部分请求头可能不是必须的,代码如下:

import urllib.request

url = 'https://www.oddsportal.com/feed/match-event/1-1-82qTWLi3-1-2-yjdca.dat'

headers = {
    'authority': 'www.oddsportal.com',
    'method': 'GET',
    'scheme': 'https',
    'accept': 'application/json, text/plain, */*',
    'accept-encoding': 'deflate',
    'accept-language': 'en-US,en;q=0.9,fi-FI;q=0.8,fi;q=0.7',
    'content-type': 'application/json',
    'referer': 'https://www.oddsportal.com/matches/hockey/20240109',
    'sec-ch-ua-platform': '"Windows"',
    'sec-fetch-dest': 'empty',
    'sec-fetch-mode': 'cors',
    'sec-fetch-site': 'same-origin',
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36',
    'x-requested-with': 'XMLHttpRequest'
    }

req = urllib.request.Request(url, headers=headers)

text = urllib.request.urlopen(req).read().decode('utf-8')

print(text[:80])

print('string length:', len(text))

运行这段脚本后,得到的输出是:

NFBSamc0SmVBREJnQVgwMm9Ld0IwMll1VXNBVEYyckdONHJnL3ljUEtYSjlJVDZ5Q0ZWNmlkeWcxYnJy
string length: 187240

有没有大佬能指点下,这串编码内容应该怎么解码才能得到原本的JSON数据呀?

备注:内容来源于stack exchange,提问作者Mikko Luttinen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 15:44:51