获取Steam Market (API)结果(以欧元表示)



我使用此URL在CS:GO容器的时间获得100个结果。我用{currency}代替3{start}为100的倍数,我的问题是currency=3似乎不是欧元,它大约有17%的折扣(我必须将接收值乘以0.83才能得到一个很好的结果):

market_url = ("https://steamcommunity.com/market/search/render/?"
"category_730_Type%5B%5D=tag_CSGO_Type_WeaponCase"
"&norender=1"
"&count=100"
"&sort_column=name"
"&sort_dir=asc"
"&currency={currency}"
"&start={start}")

据我所知:

  • category_730_Type%5B%5D=tag_CSGO_Type_WeaponCase是选择CS:GO crate
  • norender=1是不得到html
  • count=100-每页结果
  • 订购sort_column=name&sort_dir=asc
  • currency=3选择欧元作为货币<——不工作
  • start=100start at result 100

但是,我改变货币,它不会改变sell_pricesell_price_text作为响应。它仍然打印:

(...) "sell_listings":68,"sell_price":963,"sell_price_text":"9,63€" (...)注意€。

这里有打字错误吗?currency甚至解析蒸汽部分?

非常清楚。我希望得到与蒸汽市场上相同的价格(欧元)(如果您有欧元的网站)。

编辑:目前看来不太可能。如果可能的话,请发布一个新的答案!

获取Steam Market (API)结果

不幸的是,这是不可能的。你所指的参数,即currency只允许调用特定的子页面,例如:

https://steamcommunity.com/market/priceoverview/?appid=730&currency=3&market_hash_name=Fracture%20Case

(查找骨折病例的价格)-返回:

{"success"真的,"lowest_price":"0,39€","volume":"84984","median_price":"0,39€"}

如果您将currency更改为等于1(为美元):

{"success"真的,"lowest_price":"0.49美元","volume":"84847","median_price":"0.48美元"}

您可以清楚地看到,currencyhttps://steamcommunity.com/market/priceoverview/工作得很好。


虽然据我所知,https://steamcommunity.com/market/search/render/?不接受currency参数作为输入,即货币最终将呈现为美元(或currency=1)。

你可以做的是通过https://steamcommunity.com/market/search/render/?抓取并通过https://steamcommunity.com/market/priceoverview/?查找价格,尽管这个选项会产生相当不准确的结果(priceoverview只显示有限的细节)。


稍微偏离主题:您可以在本地转换价格(使用其他api或具有特定因子的静态货币对)。虽然正如你特别提到的,你想通过官方价格来计算("手动"计算)。以差异结束(与steam相关),这不是一个有效的选项。

我也有同样的问题,我唯一的解决办法是在请求中包含我的cookie,这样steam就知道我的登录并自动以我的默认货币发送价格。

"Cookie":  
"steamMachineAuthXXXXXXXXXXXXXXXXX=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX; "
"Steam_Language=english; "
"steamLoginSecure=XXXXXXXXXXXXXXXXX||XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX; "

注意:我将实际值改为"X"出于安全考虑。

相关内容

  • 没有找到相关文章

最新更新