我试图获取蒸汽市场上商品的价格历史记录。我找到了一个返回特定商品价格历史的链接(几乎每个关于从该网站上的市场获取价格历史的问题都会提到。)
当我在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中登录?
答案 0 :(得分:4)
您需要将Cookie
密钥steamLogin
设置为您的会话ID。您可以在浏览器上执行登录并获取此值。
cookie = {'steamLogin': '76561198058933558%7C%7C2553658936E891AAD'}
data = requests.get('http://steamcommunity.com/market/pricehistory/?country=PT¤cy=3&appid=730&market_hash_name=Falchion%20Case', cookies=cookie);
我在此处使用了随机steamLogin
值,将其更改为您的会话ID。
您也可以尝试通过python执行登录,但是您可能希望关闭蒸汽防护以使事情变得更简单。我会证明自动执行登录,但我不想禁用我的蒸汽防护并获得15天的交易限制。