All Projects → waymanglover → hearthstats

waymanglover / hearthstats

Licence: GPL-2.0 license
Scrape Hearthstone decks from HearthPwn, then build a SQLite database of the results. Can also scrape card collection data from HearthPwn/Innkeeper, and integrates with omgvamp's Mashape Hearthstone API to build a table of card data that can be used to make more advanced queries.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to hearthstats

mtgsqlive
MTGJSON build scripts to generate alternative data formats
Stars: ✭ 40 (+263.64%)
Mutual labels:  sqlite-database, card-data
Sqlable
Swift library for making storing data in a SQLite database simple and magic-free
Stars: ✭ 83 (+654.55%)
Mutual labels:  sqlite-database
hs-art-extractor
A tool to extract Hearthstone card art from the game files
Stars: ✭ 21 (+90.91%)
Mutual labels:  hearthstone
OLA Play Music App
Music Streaming App
Stars: ✭ 27 (+145.45%)
Mutual labels:  sqlite-database
hearthstone-linux
Craft your own linux native Hearthstone client
Stars: ✭ 41 (+272.73%)
Mutual labels:  hearthstone
tibiawiki-sql
Python script that generates a SQLite database from TibiaWiki articles
Stars: ✭ 19 (+72.73%)
Mutual labels:  sqlite-database
DBFlowManager
A quick and easy database manager plugin library for your DBFlow databases.
Stars: ✭ 26 (+136.36%)
Mutual labels:  sqlite-database
watchdb
Keeping SQLite databases in sync
Stars: ✭ 72 (+554.55%)
Mutual labels:  sqlite-database
sqliteweb
Web-Based SQLite database browser
Stars: ✭ 93 (+745.45%)
Mutual labels:  sqlite-database
alphastone
Using self-play, MCTS, and a deep neural network to create a hearthstone ai player
Stars: ✭ 24 (+118.18%)
Mutual labels:  hearthstone
sqflite migration
Library to manage sqlite db migrations.
Stars: ✭ 40 (+263.64%)
Mutual labels:  sqlite-database
SQLiteHelper
🗄 This project comes in handy when you want to write a sql statement easily and smarter.
Stars: ✭ 57 (+418.18%)
Mutual labels:  sqlite-database
mlflow-tracking-server
MLFLow Tracking Server based on Docker and AWS S3
Stars: ✭ 59 (+436.36%)
Mutual labels:  sqlite-database
Advisor
A Hearthstone Deck Tracker plugin which tries to guess the opponent's deck while playing and shows it's supposed cards.
Stars: ✭ 16 (+45.45%)
Mutual labels:  hearthstone
hdt-plugin-endgame
A Hearthstone Deck Tracker plugin that helps keep track of your opponents deck types after a game
Stars: ✭ 20 (+81.82%)
Mutual labels:  hearthstone
AndroidEasySQL-Library
An Easier & Lazier approach to SQL database for Android
Stars: ✭ 28 (+154.55%)
Mutual labels:  sqlite-database
sqlite-analyzer
Code generation for Java/Android database access.
Stars: ✭ 63 (+472.73%)
Mutual labels:  sqlite-database
Bank-Account-Simulation
A Bank Account Simulation with JavaFX and SQLite back-end. Material UX|UI.
Stars: ✭ 19 (+72.73%)
Mutual labels:  sqlite-database
hs-bugs
Unofficial Hearthstone issue tracker
Stars: ✭ 67 (+509.09%)
Mutual labels:  hearthstone
hsproto
Hearthstone Protobuf files
Stars: ✭ 31 (+181.82%)
Mutual labels:  hearthstone

hearthstats

Scrape Hearthstone decks from HearthPwn (http://hearthpwn.com), then build a SQLite database of the results. Can also scrape card collection data from HearthPwn/Innkeeper (http://innkeeper.com), and integrates with omgvamp's Mashape Hearthstone API (http://hearthstoneapi.com) to build a table of card data that can be used to make more advanced queries.

Requires lxml, cssselect, and requests packages. These can be installed by opening a command prompt in the hearthstats folder, and running the following command:

pip install -r requirements.txt
usage: hearth.py [-h] [--buildcards] [--builddecks] [--buildcollection]
                 [--perclass] [--count COUNT] [--filtering FILTERING]
                 [--sorting SORTING] [--patch PATCH] [--results]

Scrape Hearthstone decks from HearthPwn (http://hearthpwn.com), then build a
SQLite database of the results. Can also scrape card collection data from
HearthPwn/Innkeeper (http://innkeeper.com), and integrates with omgvamp's
Mashape Hearthstone API (http://hearthstoneapi.com) to build a table of card
data that can be used to make more advanced queries.

optional arguments:
  -h, --help            show this help message and exit
  --buildcards          build card database from Mashape
  --builddecks          build deck database from HearthPwn
  --buildcollection     build personal card collection from Hearthpwn
  --perclass            get the same number of decks for each class
  --count COUNT         number of decks to retrieve (per class, if --perclass
                        is set)
  --filtering FILTERING
                        the HearthPwn filter used when finding decks, as seen
                        in the HearthPwn URL
  --sorting SORTING     the HearthPwn sorting used when finding decks, as seen
                        in the HearthPwn URL after "&sort="
  --patch PATCH         the HearthPwn patch ID used when finding decks, as
                        seen in the HearthPwn URL after "&filter-build="
  --results             for all cards, display (in a CSV-ish format) the:
                        cardname, hero (or neutral), total count of decks
                        using the card, percentage of decks using the card,
                        average count of the card in decks using it, and the
                        count of the card in your collection.

Before populating the card database, you must first register for an API key at Mashape.com. Once you have your API key, rename config.ini.example to config.ini if config.ini does not already exist, and open config.ini in a text editor (running the script once will also create a blank config.ini file):

[Configuration]
mashapekey = keygoeshere
authsession = authsessiongoeshere

Replace keygoeshere with your Mashape API key.

Before populating the card collection database, you must first sync your card collection using Innkeeper. Then, log in to your HearthPwn account. Using your web browser's development console (or another cookie-viewing tool), get the value of the Auth.Session cookie. Once you have your Auth.Session value, rename config.ini.example to config.ini if config.ini does not already exist, and open config.ini in a text editor (running the script once will also create a blank config.ini file):

[Configuration]
mashapekey = keygoeshere
authsession = authsessiongoeshere

Replace authsessiongoeshere with your Auth.Session value.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].