Lean-Juc Dicarp
Lean-Juc Dicarp

Reputation: 307

Steam store scraping - how to get prices from other countries?

For a project I want to display data about Steam games, so I'm trying to retrieve data from the Steam store. For apps and packages there is a really nice API to use. (Example: https://store.steampowered.com/api/appdetails?appids=905370&filters=&cc=US&l=english) , but there is no way to get data for bundles. So I have to retrieve each bundle individually from the store (by scraping). (Example: https://store.steampowered.com/bundle/1232/Resident_Evil_456/).

I know how to scrape, but the problem is getting data from other locations, means prices from other countries. I tried everything, but I can't get other currencies. There is a "steamCountry" parameter in the cookie header like this: steamCountry=DE%7Ca430f80515ce15e271873b3b1ed6a207;, but when I change this parameter to US or other countries, just nothing changes. I'm afraid they are using geolocation by IP, but then this parameter wouldn't make sense.

Does anyone know how to retrieve other currencies/countries, besides using proxies from those locations.

Thanks!

Upvotes: 2

Views: 2260

Answers (3)

toxdotnet
toxdotnet

Reputation: 31

To view in other currencies, add ?cc=xx to the end of the Steam Store URL. For example: https://store.steampowered.com/app/1839700/Milk_Bottle_And_Monster_Girl/?cc=DE

This will provide you with the price of the game that Germany pays. In this case, Euros. Always use the country codes to view other currencies.

Upvotes: 0

luzede
luzede

Reputation: 165

There is a website SteamDB which has prices for games. They have bundles page which you can scrape instead of Steam and get the prices for different countries.

Also there is Steam Web API in the footnote which I don't know what it does but it might have some kind of API that can help you fetch the prices of bundles.

Upvotes: 1

SimpForJS
SimpForJS

Reputation: 106

From what i can see, before returning the page with the cost of a product, Steam calls this link "https://store.steampowered.com/dynamicstore/saledata/?cc=US" to Get the cookies for your country. If you manage to call this with the country code changed eg https://store.steampowered.com/dynamicstore/saledata/?cc=FR, i think this might just do it.

Otherwise the solution is to itegrate some code that Programmatically Finds, Connects to, and disconnects from VPNs (here some code I found: https://www.codeguru.com/visual-basic/programmatically-finding-connecting-to-and-disconnecting-from-vpns/)

Happy coding and good luck!

Upvotes: 0

Related Questions