如何检索蒸汽市场价格历史?

时间:2015-08-12 09:55:59

标签: python steam steam-web-api

我试图获取蒸汽市场上商品的价格历史记录。我找到了一个返回特定商品价格历史的链接(几乎每个关于从该网站上的市场获取价格历史的问题都会提到。)

http://steamcommunity.com/market/pricehistory/?country=PT&currency=3&appid=730&market_hash_name=Falchion%20Case

当我在Steam中登录时,它在浏览器中工作正常,但是当我尝试在python中执行相同的操作时,它会返回一个空列表(当我尝试在浏览器中执行此操作时会发生同样的事情虽然没有登录Steam)。这是我的python代码(使用请求lib):

import requests

params = {'country': 'RU', 'currency': 5, 'appid': 730, 'market_hash_name': 'Falchion%20Case'}
data = requests.get('http://steamcommunity.com/market/pricehistory', params=params)
print(data.text)

所以,问题是:有没有办法模仿在使用python(或其他语言)发出请求时在Steam中登录?

1 个答案:

答案 0 :(得分:4)

您需要将Cookie密钥steamLogin设置为您的会话ID。您可以在浏览器上执行登录并获取此值。

cookie = {'steamLogin': '76561198058933558%7C%7C2553658936E891AAD'}    
data = requests.get('http://steamcommunity.com/market/pricehistory/?country=PT&currency=3&appid=730&market_hash_name=Falchion%20Case', cookies=cookie);

我在此处使用了随机steamLogin值,将其更改为您的会话ID。

您也可以尝试通过python执行登录,但是您可能希望关闭蒸汽防护以使事情变得更简单。我会证明自动执行登录,但我不想禁用我的蒸汽防护并获得15天的交易限制。