如何解决计算蒸汽库存值
我在获取库存物品方面没有问题。但是我无法有效地计算商品价格。
Valve没有价格API。
我尝试过的操作(使用“ steamcommunity.com”)(例如,javascript):
itemHashNameArray.forEach((hashname) => {
let url = `https://steamcommunity.com/market/priceoverview/&appid=730&market_hash_name=${hashname}`;
let itemDetails = steamApi(url);
//"steamApi" function just sends get request to site and returns response as json.
let itemPrice = parseFloat(itemDetails.lowest_price.split(" ")[0].replace(",","."));
})
“ steamcommunity.com/market”使您可以根据请求获得1个商品的价格。
这是非常缓慢的/无效的。在这么多请求之后,蒸汽也会阻止您。
我发现的第三方API,每个请求也允许1个项目。 他们甚至不支持美元以外的其他货币。 我也需要计算其他货币。
是否有更快,更好的方法/ api?
解决方法
只是为了说明正在发生的事情:
大多数网页和API都对请求有限制,这有助于防止恶意DoS攻击或仅仅是过多的资源消耗(通常也很昂贵)。我在尝试获取Wikipedia / DBPedia信息时遇到了麻烦。
尽管这很烦人,但公司或第三方通常会认识到需要针对其数据进行大宗交易,并打开API(通常是收费的):https://partner.steamgames.com/doc/gettingstarted
一些第三方包括SteamApis和Steamlytics。
也有专门用于此目的的整个subreddit,这是API调用的相关文章,以获取用户的所有库存物品:https://www.reddit.com/r/SteamBot/comments/jey4sg/help_i_am_trying_to_make_a_script_that_counts_the/
可能的另一种选择是滚动自己的API服务,该服务可以以某种方式以不超过限制的速率提取库存数据。不确定这种合法性或第三方必须跳过哪种类型的篮球,除非您开始收取使用费用,否则这可能是最昂贵的。我认为加载完整的html,然后编写解析器以使用直接的Javascript或JQuery剖析某些信息将减轻某些看起来像垃圾邮件的调用,但这可能也有局限性,我不确定是否包括所有相关信息容易获得。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。