如何通过GOG API获取所有游戏ID/名称列表?
解决GOG API请求返回空字符串的问题
- GOG的公开API请求必须携带合法的User-Agent请求头,否则服务器会返回空响应。
/products接口默认需要分页参数来返回有效数据,比如指定页码和单页数据量。
修改后的可运行代码示例:
import requests # 模拟浏览器的User-Agent,避免被服务器拦截 headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36" } # 分页参数:获取第1页,每页返回20条数据,可根据需求调整 params = { "page": 1, "limit": 20 } response = requests.get("https://api.gog.com/products", headers=headers, params=params) # 解析返回的JSON数据 game_data = response.json() print(game_data)
- 若要获取全量游戏ID列表,需循环遍历分页:每次请求后读取返回结果里的
pagination字段,拿到下一页页码,直到返回数据为空为止。 - 注意:GOG API有请求频率限制,不要短时间内发起大量请求,防止IP被封禁。
内容的提问来源于stack exchange,提问作者parrot
相关产品推荐
相关产品推荐

