Question

I'm aware of the WoW add-on programming community, but what I can find no documentation on is any API for accessing WoW's databases from the web. I see third-party sites like WoWHeroes.com and Wowhead use game data (item and character databases,) so I know it's possible. But, I can't figure out where to begin. Is there a web service I can use or are they doing some sort of under-the-hood work that requires running the WoW client in their server environment?

Was it helpful?

Solution

Sites like Wowhead and WoWHearoes use client run addons from players which collect data. The data is then posted to their website. There is no way to access WoW's database. Your best bet is to hit the armory and extract the XML returned from your searches. The armory is just an xml transform on xml data returned.

OTHER TIPS

Blizzard has recently (8/15/2011) published draft documentation for their RESTful APIs at the following location:

http://blizzard.github.com/api-wow-docs/

The APIs cover information about characters, items, auctions, guilds, PVP, etc.

Requests to the API are currently throttled to 3,000 per day for anonymous usage, but there is a process for registering applications that have a legitimate need for more access.

Update (January 2019): The new Blizzard Battle.net Developer Portal is here:

https://develop.battle.net/

Request throttling limits and authentication rules have changed.

Characters can be mined from the armory, the pages are xml. Items are mined from the local installation game files, that's how wowhead does it at least.

It's actually really easy to get item data from the wow armory!

For example:

http://www.wowarmory.com/item-info.xml?i=33135

View the source of the page (not via Google Chrome, which displays transformed XML via XSLT) and you'll see the XML data!

You can use search listing pages to retrieve all blue gems, for example, then use an XML parser to retrieve the data

They are parsing the Armory information from www.wowarmory.com. There is no official Blizzard API for accessing it, but there is an open source PHP solution available (http://phparmory.sourceforge.net/)

Maybe a little late to the party, but for future reference check out the WoW API Documentation at http://blizzard.github.com/api-wow-docs/

Scraping HTML and XML is now pretty much obsolete and also discouraged by Blizzard.

The documentation: http://blizzard.github.com/api-wow-docs/ enjoy

Sites like those actually get the data from the Armory. If you pull up any item, guild, character, etc. and do 'View Source' on the page you will see the XML data coming back. Here is a quick C# example of how to get the data.

This third-party site collection data from players. I think this collection based on addons for WoW or each player submit information manualy.

Next option is wraping wow site and parsing information from websites (HTML).

this is probably the wrong site for your question, but you're thinking of the wowarmory xml stuff. there is no official wow api. people just do httprequests and get the xml to do number crunching stuffs. try googling around. there are some libs out there in different languages that are already written for you. i know there are implementations in php/ruby. i was working on one in .net a while back until i got distracted. here's an article which kinda sums this all up.

http://www.wow.com/2008/02/11/mashing-up-wow-data-when-we-can-get-it-in-outside-applications/

Wowhead and other sites generally rely on data gathered by users with a wow add-in.

Wowhead also has a way for other sites to reference that data in hover pop-ups, so their content gets reused on a number of sites.

Powered by Wowhead

For actual ingame data collection: cosmos.exe is what thottbot for example uses. It probably uses some form windows hack (dllinjection or something) or sniffs packets to determine what items have dropped and etc. (intercepts traffic from the wow server to your client and decodes it). It saves this data on the users computer and then uploads it to a webserver for storage. I don't know if any development libraries were created for this sort of thing.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top