- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在制作一个需要访问用户的 Steam 库存的网站。我找到了一个用于获取 Team Fortress 2 库存、Dota 2、CS:S、CS:GO 和 Portal 2 的 API。但我没有找到任何用于获取 Steam 库存的 API。
是否可以访问用户的 Steam 库存?
最佳答案
自 2016 年 12 月起,有一个用于获取库存的新端点。下面列出的旧端点仍然有效(目前)。两者似乎都受到严格的速率限制。
新的库存路径是:
http://steamcommunity.com/inventory/<PROFILEID>/440/2?l=english&count=5000
通过这条新路径,l
是您想要接收数据的语言,并且 count
是一次接收返回的项目数。最大值为 5000。
您也可以使用这个新端点进行分页:
http://steamcommunity.com/inventory/<PROFILEID>/440/2?l=english&count=5000&start_assetid=468336866
这将提取以 assetid 468336866
开头的接下来 5000 个项目.
端点返回一个大的json对象,其结构如下:
{
'assets': <list>,
'descriptions': <list>,
'total_inventory_count': integer,
'success': 1/0,
'rwgran': integer
}
我不完全确定什么rwgran
就在此时。
assets
键,返回如下所示的数据:
[{'amount': '1',
'appid': '440',
'assetid': '4985815666',
'classid': '134',
'contextid': '2',
'instanceid': '0'},
{'amount': '1',
'appid': '440',
'assetid': '4985815941',
'classid': '22989188',
'contextid': '2',
'instanceid': '0'},
...
]
descriptions
key 包含这样的条目。请注意,这比旧端点包含更多信息。
[{'actions': [{'link': 'http:\\/\\/wiki.teamfortress.com\\/scripts\\/itemredirect.php?id=241&lang=en_US',
'name': 'Item Wiki Page...'}],
'appid': 440,
'background_color': '3C352E',
'classid': '134',
'commodity': 0,
'currency': 0,
'descriptions': [{'type': 'text',
'value': 'Is an enemy player questioning your skills, personal hygiene, and\\/or ancestry?\nUse these stylish firearms to challenge them to a duel!\nSee the Mann Co. Catalog for full details.'},
{'type': 'text', 'value': ' '},
{'color': '00a000',
'type': 'text',
'value': 'This is a limited use item. Uses: 5'}],
'icon_url': 'fWFc82js0fmoRAP-qOIPu5THSWqfSmTELLqcUywGkijVjZULUrsm1j-9xgECbwgfYh_3vTRKhs_ZAfOeD-VOyo4z4clTizJqwQcpYOHnNDFmcweRVqQPCqVq91C-WCM26pFnB4PjofUWJ1uAGDnHsA',
'icon_url_large': 'fWFc82js0fmoRAP-qOIPu5THSWqfSmTELLqcUywGkijVjZULUrsm1j-9xgECbwgfYh_3vTRKhs_ZAfOeD-VOyo4z4clTizJqwQcpYOHnNDFmcweRVqQPCqVq91C-WCM26pFnB4PjofUWJ1uAGDnHsA',
'instanceid': '0',
'market_hash_name': 'Dueling Mini-Game',
'market_marketable_restriction': 0,
'market_name': 'Dueling Mini-Game',
'market_tradable_restriction': 7,
'marketable': 0,
'name': 'Dueling Mini-Game',
'name_color': '7D6D00',
'tags': [{'category': 'Quality',
'color': '7D6D00',
'internal_name': 'Unique',
'localized_category_name': 'Quality',
'localized_tag_name': 'Unique'},
{'category': 'Type',
'internal_name': 'TF_UsableItem',
'localized_category_name': 'Type',
'localized_tag_name': 'Usable Item'},
{'category': 'Class',
'internal_name': 'Scout',
'localized_category_name': 'Class',
'localized_tag_name': 'Scout'},
{'category': 'Class',
'internal_name': 'Sniper',
'localized_category_name': 'Class',
'localized_tag_name': 'Sniper'},
{'category': 'Class',
'internal_name': 'Soldier',
'localized_category_name': 'Class',
'localized_tag_name': 'Soldier'},
{'category': 'Class',
'internal_name': 'Demoman',
'localized_category_name': 'Class',
'localized_tag_name': 'Demoman'},
{'category': 'Class',
'internal_name': 'Medic',
'localized_category_name': 'Class',
'localized_tag_name': 'Medic'},
{'category': 'Class',
'internal_name': 'Heavy',
'localized_category_name': 'Class',
'localized_tag_name': 'Heavy'},
{'category': 'Class',
'internal_name': 'Pyro',
'localized_category_name': 'Class',
'localized_tag_name': 'Pyro'},
{'category': 'Class',
'internal_name': 'Spy',
'localized_category_name': 'Class',
'localized_tag_name': 'Spy'},
{'category': 'Class',
'internal_name': 'Engineer',
'localized_category_name': 'Class',
'localized_tag_name': 'Engineer'}],
'tradable': 1,
'type': 'Level 5 Usable Item'},
...
]
与旧方法一样,assets
和descriptions
通过 classid
链接两者皆有。
此端点将返回 { "success": false, "Error": "Unsupported request" }
在某些地区(取决于帐户地区)。预计所有区域将在不久的将来关闭此端点。
如果目标的个人资料权限设置适当,您可以获得一些有限的信息。
您可以查看结果 json
使用这两个链接中的任何一个来获取测试版(以及礼物,如果设置了适当的权限) list 的文件
http://steamcommunity.com/id/<CUSTOMURL>/inventory/json/753/1
http://steamcommunity.com/profiles/<PROFILEID>/inventory/json/753/1
CUSTOMURL
是玩家选择使用的用户友好名称。玩家可以随时更改此设置。如果您正在编写网页,我假设您知道如何获取这条信息,对吗? PROFILEID
是您创建帐户时 Steam 为玩家提供的 64 位 ID。这是不可更改的,并且在使用 OpenID 实现登录时由 Steam 返回。
使用这些 URL 时,有几种可能的响应。第一个是用户是否将其个人资料设置为私有(private)。
{"success":false,"Error":"This profile is private."}
第二个是库存中“东西”的列表
{
"success":true,
"rgInventory":
{
"1586670077416875609":
{
"id":"1586670077416875609",
"classid":"149742033",
"instanceid":"0",
"amount":"1",
"pos":1
},
"1586670077416875905":
{
"id":"1586670077416875905",
"classid":"149742033",
"instanceid":"0",
"amount":"1",
"pos":2
},
"1586670077416877092":
{
"id":"1586670077416877092",
"classid":"149742033",
"instanceid":"0",
"amount":"1",
"pos":3
}
},
"rgCurrency":[],
"rgDescriptions":
{
"149742033_0":
{ "appid":"753",
"classid":"149742033",
"instanceid":"0",
"icon_url":"ZyjGwQD4ogROtSm7KvtdP99kDHBEiKxKm3Gg7pMaBJyiPu4iS_PzF6QhOUdOwk-m0WhXYQ7X8AbNL6Hz1VxOnq4-8iBC5MlBuXMuElaaCrHQLww9T5S1Ecoqo_PYWg==",
"icon_url_large":"a6FEz5nbBlvu8bGd1oDggdPtjn7dqwgVOzU4yG9huSKut2ws0tBXSARloWGyufIY3eHVb5f0VFltaznVKSfzK6amZz7FjFhcTTm6Maz860eOrMo937A=",
"icon_drag_url":"",
"name":"Steam Trading Card Beta",
"market_name":"",
"name_color":"",
"background_color":"",
"type":"Gift",
"tradable":1,
"marketable":0,
"descriptions":[
{"value":"Steam Trading Card Beta Access - Extra Copy"},
{"value":"Grants early access to the Steam Trading Cards beta, game badges, and the new profile. Join the Steam Trading Cards Group and post your feedback in the Discussions area. Select \u201cAdd to my game library\u201d to activate."}
],
"actions":[
{"name":"View in store","link":"http:\/\/steamcommunity.com\/tradingcards"}
]
}
}
}
如果 URL 是您的 ID 并且您已登录 Steam,您还可以看到列为 Gift
的项目。 。否则,默认情况下它们是隐藏的。
由于这不是官方 API,因此没有太多关于此特定架构的文档。但是,rgInventory
中的项目似乎链接到 reDescriptions
中的项目通过 classid
。编写解析器作为读者的练习。
这些显示了测试版访问权限。
如果您正在查找交易卡信息,请更改 1
在上面的 URL 中指向 6
http://steamcommunity.com/id/<CUSTOMURL>/inventory/json/753/6
http://steamcommunity.com/profiles/<PROFILEID>/inventory/json/753/6
这些的架构布局似乎是相同的。
关于api - 获取某人的 Steam 库存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17393099/
我一直在查看 Steam API 文档,并且有许多服务提供 Steam 网上商店中游戏的信息,但它们似乎都需要游戏的 Steam ID 作为参数。这可以通过用户 ID 来完成,如果给定用户名,API
我正在尝试获取用户游戏统计数据。首先,我正在尝试这样做: http://api.steampowered.com/ISteamUserStats/GetUserStatsForGame/v0002/?
我正在尝试在 Steam 上找到该项目的名称。 这是我目前从 json 数组中得到的 [appid] => 730 [contextid] => 2 [assetid] => 4981322842 [
我正在开发一个使用公共(public) Steam API 来收集一些信息的应用程序。 目前我通过调用GetPlayerAchievements (v0001)检索成就和通话总时长 GetOwnedG
是否可以使用 Steam API 获取 Steam(753) 或 CsGo(730) 完整背包/库存? 我找到了一个 API,我可以在其中获取 Dota2(570) TF2(440) 的完整背包/元素
我正在尝试获取 JSON 格式的买卖订单,例如价格历史记录,但找不到任何信息。有没有办法做到这一点? Buy and Sell orders screenshot 我尝试过: https://stea
我搜索了论坛,找到了获取所有用户游戏的示例模式: http://steamcommunity.com/id//games?tab=all&xml=1 返回所有游戏。但是,如果用户尚未设置 Steam
我一直在阅读论坛并尝试 Steam API,我正在寻找提供所有 Steam 游戏的 API。 我找到了提供所有 SteamApps 的 API,以及提供应用程序信息的 Steam 商店 API(我正在
Steam 为我们提供了交易相关的API,但没有具体的地址示例:https://developer.valvesoftware.com/wiki/Steam_Web_API/IEconService#
Steam 为我们提供了交易相关的API,但没有具体的地址示例:https://developer.valvesoftware.com/wiki/Steam_Web_API/IEconService#
我正在尝试使用 Google 日历跟踪我的游戏时间/历史记录。 这是 Steam Web API在其中我找不到一种方法来获取关于我究竟在什么时候玩什么的详细信息,除了 GetRecentlyPlaye
如何使用 Steam API(已启动并运行)获取我的应用程序中当前使用(登录)帐户的 Steam 用户名。 Steam ID 可以(例如)通过以下方式获得: CSteamID id = SteamUs
有很多网站,例如www.tf2outpost.com和 www.bazaar.tf用户可以通过单击按钮添加其他 Steam 用户。你到底是如何做到这一点的? Web API 中没有任何内容向您展示如何
我使用此 URL 在 CS:GO 容器中一次获取 100 个结果。我用 {currency} 代替 3,用 {start} 代替 100 的倍数,我的问题是 currency=3 code> 似乎不是
我在 Steam API 中搜索发送 Steam 报价的方法,但找不到。可以使用 API 或者您知道其他方法吗?我想在 PHP/Symfony 中使用它。 最佳答案 您目前无法通过 API 创建交易报
我想知道有没有办法让用户输入他们的“Steam 用户名”,然后您就可以找到他们的“SteamID”。我一直在查看“Steam API”,但没有找到任何相关信息。 我的想法是让用户将他们的“Steam
是否有 API 可以获取用户的 Steam 集换式卡牌? 我对steam不太熟悉,但这个页面上好像没有。 https://developer.valvesoftware.com/wiki/Steam_
steam 桌面快捷方式 steam:// 实际如何工作? 它们的 URL/目标类似于:“steam://rungameid/717”我知道类似的东西,比如“ftp://mynetworkadress
是否有 API 可以获取用户的 Steam 集换式卡牌? 我对steam不是很熟悉,但是这个页面好像没有。 https://developer.valvesoftware.com/wiki/Steam
steam 桌面快捷方式 steam:// 实际如何工作? 它们的 URL/目标类似于:“steam://rungameid/717”我知道类似的东西,比如“ftp://mynetworkadress
我是一名优秀的程序员,十分优秀!