Commit Graph

198 Commits

Author SHA1 Message Date
Worros
bc4a53d754 FTP: Fix re_PlayerInfo to find ', is sitting out' for cash games
Turns out that a player sitting out at the start of a cash game hand can (in what i hope is a small set of hands) be dealt cards and act in a hand
2010-09-09 15:14:54 +08:00
steffen123
82dcefc1d6 Revert "Revert "gettextify FulltiltToFpdb.py""
This reverts commit a1f079e447.
2010-08-29 21:10:57 +02:00
Eratosthenes
eef5fd28e8 FulltiltToFpdb: Throw exception when HandInfo reg ex doesn't match. 2010-08-26 22:52:16 -04:00
Worros
6d2de998c8 FTP: fix type hand.maxSeats to maxseats 2010-08-27 00:09:18 +08:00
steffen123
fb6c5c7ec6 fix to recognise different spelling of FT headsup 2010-08-22 06:46:29 +02:00
Worros
3f0f421c0d FTP: Make FTP.fr hand histories parse.
Had to adjust the currency character match, and the tablename which required \u2013 or 'En Dash'

Works for the 5 hand sample provided.
2010-08-18 13:12:11 +08:00
steffen123
a1f079e447 Revert "gettextify FulltiltToFpdb.py"
This reverts commit 41621c5610.

Conflicts:

	pyfpdb/FulltiltToFpdb.py
2010-08-16 04:14:25 +02:00
steffen123
80bee24969 insignificant bracketing change 2010-08-16 03:56:36 +02:00
steffen123
41621c5610 gettextify FulltiltToFpdb.py 2010-08-16 03:05:27 +02:00
gimick
a6d7f27f5b FullTilt fixup currency typo 2010-08-10 00:32:53 +01:00
Worros
0c9e3e4973 Merge branch 'master' of git://git.assembla.com/free_poker_tools 2010-08-05 16:55:18 +08:00
Worros
246c625fef FTP: Update regexes to support EUR games.
This touches on many Full Tilt regexes, and they appear to be functional.

I dont have a pristine FTP.fr hand history to test this with yet.

Buyer beware.
2010-08-05 16:43:24 +08:00
Eratosthenes
edce06c5cb Merge branch 'master' of git://git.assembla.com/fpdb 2010-08-04 17:39:00 -04:00
Worros
ac728fffb2 FTP and Timezone fix.
Error reported with the following hand hostory from FTP France:

Full Tilt Poker.fr Game #22632637058: Daily Euro (174599326), Table 3 - 10/20 - No Limit Hold'em - 20:15:39 CET - 2010/07/27

The existing FTP parser crashed on CET times.

1) Fixed parser to accept CET
2) Added timezone offset into HHC

Not happy with TZ1/TZ2 solution.
2010-07-29 19:59:45 +08:00
Eratosthenes
ba66f85f8a Merge branch 'master' of git://git.assembla.com/fpdboz 2010-07-22 13:26:03 -04:00
Worros
72f395bab0 Merge branch 'master' of git://git.assembla.com/fpdb
Conflicts:
	pyfpdb/FulltiltToFpdb.py
2010-07-22 10:49:22 +08:00
Worros
6da2c6de82 Merge branch 'master' of git://github.com/kangaderoo/fpdb-kangaderoo
Conflicts:
	pyfpdb/FulltiltToFpdb.py
2010-07-22 10:48:22 +08:00
Eratosthenes
902a4ad722 Merge branch 'master' of git://git.assembla.com/fpdb
Conflicts:
	pyfpdb/FulltiltToFpdb.py
2010-07-21 22:45:14 -04:00
steffen123
fe345c7cf3 Merge branch 'master' of git://github.com/kangaderoo/fpdb-kangaderoo
Conflicts:
	pyfpdb/FulltiltToFpdb.py

conflict had obvious resolution
2010-07-22 01:11:52 +02:00
Eratosthenes
21981a921b Merge branch 'master' of git://github.com/kangaderoo/fpdb-kangaderoo
Conflicts:
	pyfpdb/FulltiltToFpdb.py
2010-07-21 18:52:43 -04:00
Eratosthenes
64d76855f1 Merge branch 'master' of git://git.assembla.com/fpdboz
Conflicts:
	pyfpdb/py2exe_setup.py
2010-07-21 18:46:34 -04:00
Eratosthenes
0e6aa16e41 catch up a minor changecatch up a minor change.. 2010-07-21 18:40:33 -04:00
Gerko de Roo
50422ee8e3 Patch for the new date display for Full Tilt for tourney(s).
(Havent checked on ring games... Broke on Full Tilt...)
Current the old an the new is supported:
old: bla bla, Table 800 - 15/30 - No Limit Hold'em - 4:44:59 ET - 2010/07/18
new: bla bla, Table 19 - 15/30 - Pot Limit Omaha Hi - 13:43 ET - Wed, July 21, 2010
2010-07-21 23:04:24 +02:00
steffen123
a8edb976f8 FTP: fix to make it store Hand.startTime as UTC rather than ET 2010-07-15 02:19:58 +02:00
steffen123
9cb47b4195 stop it from dying on fpdb summary files (by commenting out the whole section) 2010-07-09 01:10:06 +02:00
steffen123
3bff176970 Merge branch 'carl'
Conflicts:
	packaging/debian/changelog
	pyfpdb/PokerStarsToFpdb.py
	pyfpdb/TourneySummary.py
2010-07-08 22:33:09 +02:00
steffen123
178b528d3b change calls to python2 back to python 2010-07-08 20:01:03 +02:00
steffen123
c6b6f8a788 many not really separable changes for IMAP import and associated cleaning
- deactivated use of TourneySummary (short: TS) from HHC and subclasses
- menu entry for IMAP import
- converted ImapSummaries (short: IS) to use the config file
- IS now optionally supports non-SSL and can run on folders other than INBOX
- removed gametypes and getGameTypeAsString from TS method as identical one is in Hand
- some other stuff
2010-07-08 19:46:25 +02:00
Worros
e7776de8f1 Fix startTime change in remaining files 2010-07-08 23:30:02 +08:00
steffen123
92a4b105cc parsing PS summary emails now. just need to write insert/update code now 2010-07-07 06:58:42 +02:00
steffen123
eb3233ac98 more tourney work
- moved HH-based tourney handling completely into Hand
- renamed Tourney.py to TourneySummaries
- changed many DB fields to allow NULL and removed defaults
2010-07-07 04:01:40 +02:00
steffen123
04ed65e88c minor DB changes. recording TourneysPlayers now for FTP and PS 2010-07-07 00:52:44 +02:00
steffen123
2717c71b4e fixes FTP tourneys to work as good/bad as PS tourneys 2010-07-06 18:07:26 +02:00
steffen123
39859970d7 another repair as a result of removing payinAmounts 2010-07-05 01:29:05 +02:00
steffen123
fd7556af89 fix call to tourney.addPlayer after removal of payinAmount 2010-07-04 23:42:57 +02:00
steffen123
3b24fd18b2 some cleanups:
- updated copyright notices
- added copyright notices that were missing
- changed python to python2
- added gpl-2/3 license texts
- removed THANKS.txt file as the wiki version is more up to date
- removed empty fpdb_db.py
- added GPL2 to debian license file
2010-07-04 03:05:16 +02:00
steffen123
6bc3e741c6 removed TourneyTypes.headsUp 2010-07-02 19:39:02 +02:00
steffen123
0477c73801 changed TourneyTypes as discussed, some currency-related fixes
I haven't expanded all queries etc. to include the new fields
    as that code is not currently used by anything and can be
    expanded as needed
2010-06-25 11:02:01 +02:00
steffen123
e46b0b7a0f renamed tourneyplayers to tourneysplayers in a few places 2010-06-21 17:12:20 +02:00
steffen123
e6fd3afbba renamed totalRebuys/AddOns to totalRebuyCount/AddOnCount 2010-06-21 16:45:15 +02:00
Worros
23ae26259b Steffen reported a FTP file in UTF-8 format.
Added it as the 3rd codec tested
2010-06-04 04:17:30 +08:00
Worros
6a17609040 FullTilt: Playernames can be 2 chars long
Found a hand history where the playername was 'OG'. The parser assumed player names were a minimum of 3 characters.
2010-03-02 15:51:40 +08:00
Gerko de Roo
af6dbc8d5f Copied same dead blind procedure from Pokerstars to Full Tilt 2010-02-18 22:32:53 +01:00
Gerko de Roo
35a604dcc6 Add support for posting dead small blind 2010-02-18 16:39:51 +01:00
Eratosthenes
64bfa9cd52 Import mucked cards. 2010-01-31 13:37:59 -05:00
Worros
28a7d1e353 Hopefully fully fix the FTP playername parsing.
Split hand text for FTP, as the regex matches the player names incorrectly, and differentiating the lines is non-trivial.

The split should ensure that only the first version is available
2010-01-28 23:38:52 +08:00
Eratosthenes
92e20bcd12 Add more chars to player name in prev commit. 2010-01-27 23:16:11 -05:00
Eratosthenes
d50e70fdd4 Another fix of FTP playername reg ex. 2010-01-27 20:10:07 -05:00
Worros
a9f2a261d4 Regex fix for Fulltilt player names
"Seat 7: moletrapper collected ($2.50)"
vs
"Seat 7: moletrapper ($2.50)"

The regex update should match the second and not the first.
2010-01-28 01:44:14 +08:00
Eratosthenes
2ad7e430a2 Merge branch 'master' of git://git.assembla.com/fpdboz 2010-01-27 09:49:14 -05:00
Eratosthenes
080b7f80c9 Compile the " collected" reg ex. 2010-01-27 09:23:12 -05:00
Worros
929e182a28 FulltiltToFpdb: Fix tourney player matching for players sitting out 2010-01-27 18:20:48 +08:00
Worros
8dea509245 FulltiltToFpdb: partially fix player ids
_mysql_exceptions.IntegrityError: (1062, "Duplicate entry 'romatrifon (small blind) showed -1' for key 'name'")

Previous regex was matching past the name.
2010-01-27 18:02:30 +08:00
Eratosthenes
d75e5e3920 Fixed typos, pylint complaints, and obsolete TODOs. 2010-01-27 01:10:58 -05:00
Eratosthenes
30de5142db Ugly fix to ugly edge case where winner voluntarily showed cards. 2010-01-27 00:57:58 -05:00
unknown
a6b7292943 mostly None checkings fixed (== to is != to is not) 2009-11-03 14:30:52 -05:00
unknown
7667a39ded cleanup 2009-11-03 14:04:22 -05:00
Worros
d36d8f4249 From 7d5a3e81a5d41298ab1fa4d57bef25862a167350 Mon Sep 17 00:00:00 2001
From: lucktard <ntogden@gmail.com>
Date: Wed, 30 Sep 2009 12:16:06 -0500
Subject: [PATCH] Detect and import capped 6 max hands on FullTilt

and

From b35d23aba38935406cf1522ae07a49cd441318b3 Mon Sep 17 00:00:00 2001
From: lucktard <ntogden@gmail.com>
Date: Wed, 30 Sep 2009 12:21:34 -0500
Subject: [PATCH] Detect deep 6 max tables for HUD on FT
2009-10-01 10:49:59 +08:00
Eric Blade
226153f15f Revert "FTtoFPDB: readBlinds: cleanup exception handler"
This reverts commit 0938afb882.

Conflicts:

	pyfpdb/FulltiltToFpdb.py
2009-09-16 01:40:43 -05:00
Eric Blade
05267db38a i hate git, i hate git, yes i do 2009-09-16 01:36:34 -05:00
Eric Blade
fbceb6d7af bypass the changes made in readBlinds which somehow broke the hell out of stuff 2009-09-16 01:28:28 -05:00
Eric Blade
ded05cb290 put the regex search back into the try: in FT readBlinds() because it broke FL games somehow 2009-09-16 00:54:29 -05:00
Eric Blade
0938afb882 FTtoFPDB: readBlinds: cleanup exception handler
also deal with finishPositions not being accurate, by printing a message to that effect, instead of crashing an import
2009-09-15 23:32:23 -05:00
PassThePeas
4853b888a6 Correct oddity : self.status = status = self.getPlayersPosit... and status unused 2009-09-03 07:51:05 +02:00
PassThePeas
025c81b1e1 Tourney parsing : payinAmounts, countRebuys, countAddons and countKO are now defined by player (instead of being attached to the Tourney for Hero) 2009-09-03 02:11:38 +02:00
PassThePeas
4a0b2274f8 Tourney parsing : Use of "Decimal" insted of float2int / Handle amounts in cents four Tourney Object 2009-09-01 23:46:46 +02:00
PassThePeas
b00a58249f Tourney import : tRecogniseTourneyType implemented
modified:   Database.py
	* tRecogniseTourneyType : implemented
	modified:   FulltiltToFpdb.py
	* buyin, fee, rebuyAmount, addOnAmount : converted using fpdb_simple.float2int
	modified:   SQL.py
	* Added queries for Database.tRecogniseTourneyType (getTourneyTypeIdByTourneyNo modified to return all data, getTourneyTypeId and insertTourneyTypes added)
2009-09-01 02:35:52 +02:00
PassThePeas
b85f8ec155 Some fixes in FTP summary parsing and preparations for summary import in DB. No behaviour change expected
modified:   FulltiltToFpdb.py
	* Tourney Summary File parsing : add support for Madness tourneys
	* HH file parsing : enhance Tourney topline parsing to retrieve some info (HU, Rebuy, KO, Turbo, ...) and store it into Hand object
	modified:   Hand.py
	* Some attributes added to store tourney specific info
	modified:   SQL.py
	* Add a new request (getTourneyTypeIdByTourneyNo) to help finding a tourney already in db (preparation for Tourney Summary import)
	modified:   Tourney.py
	* Attribute tourneyComment added
	modified:   fpdb_parse_logic.py
	* Change parameters in call of fpdb_simple.recogniseTourneyTypeId
	modified:   fpdb_simple.py
	* recogniseTourneyTypeId : signature changed to allow for the search of a tourney id already in db prior to searching for tourneyTypeId
2009-08-26 01:13:34 +02:00
Ray
cb8bc13ceb Allow self.codepage to be a list of codecs to try. 2009-08-23 19:40:39 -04:00
Ray
2e0c743671 Detect and skip HHs flagged as partial. 2009-08-23 15:02:00 -04:00
Ray
4065eebabe Merge branch 'master' of git://git.assembla.com/fpt_fpdb 2009-08-21 19:31:58 -04:00
PassThePeas
4a1dd26db3 First attempt to parsing summary files from FTP
modified:   FulltiltToFpdb.py
		* Modified re_HandInfo regex to take into account Matrix Tournament Hands Histories
		* Add Regex for Tourney Summaries files parsing
		* New methods : readSummaryInfo, determineTourneyType, getPlayersPositionsAndWinnings

	modified:   HandHistoryConverter.py
		* Add a Tourney object in the attributes to allow storing the summary info retrieved and the ability to hand it over after parsing
		* Add a new attribut parsedObjectType (string : "HH" or "Summary")
		* In follow = False mode : read the first line to swicth between HH & Summary parsing
		* TO DO : Deal with parsing summary files in follow = True mode
		* New methods added : isSummary, getParsedObjectType (to be called in fpdb_import), readSummaryInfo : abstract (to be implemented in each specific HHC), getTourney (returns the new attribute)

	new file:   Tourney.py
		* New object
		* Lots of attributes regarding the tourney info (buy-in, fee, entries, speed, Rebuy/add-on info, starting chips, KnockOut info, isHeadsUp, isShootout, isMatrix, ...
		* List of players with finishing positions (when available) and winnings (when available)
		* Methods :
		  ** addPlayer(self, rank, name, winnings)
		  ** incrementPlayerWinnings(self, name, additionnalWinnings): used for KO tourneys when KO occured (for Hero only)
		  ** calculatePayinAmount : unused yet, should be necessary for DB storage
		  ** some Hand methods copied that are still to be done including : assemble and insert
		  ** TO DO : write the insert method for the object to be stored in DB. This will have to deal with the fact that the DB write can occur both before (Bulk Import) or after the HH file info has been stored (tourney might or might not already exist)

	modified:   fpdb_import.py
		* import_file_dict modified :
		  ** after the construction of the hhc, it now calls the new getParsedObjectType method of HHC in order to know what has been parsed by the HHC
		  ** If it's a hand history file (actual expected behaviour) : do as before
		  ** If it's a summary file, gets the tourney object that has been built from the hhc and calls the insert method on it (similar to NEWIMPORT=True for HH)
2009-08-22 00:09:34 +02:00
Ray
4a794f7f7a Merge branch 'master' of git://git.assembla.com/fpt_fpdb 2009-08-20 12:21:59 -04:00
PassThePeas
e403c18780 Patch the readPlayerStacks : different behaviours between tourney and ring hands
modified:   FulltiltToFpdb.py
In tourneys, players sitting out are considered as in the hand. That's not the case in ring games.
2009-08-18 21:17:00 +02:00
grindi
b8af93efb5 Merge branch 'master' of git://git.assembla.com/fpt_fpdb
Conflicts:
	pyfpdb/FulltiltToFpdb.py
2009-08-18 13:47:11 +04:00
PassThePeas
c5aedf321f Modification to FulltiltToFpdb.py mostly for tourneys contexts
modified:   FulltiltToFpdb.py
- Sitting out players are no longer considered out of a hand (in a tourney context, they can act even if out at the beggining of the hand)
- re_CollectPot modified to take into account Tournament context (no $ in the pot)
- Try to read buy-in/fee from topline in Tournament context
- Deal with commas in pot size (readCollectPot)
2009-08-16 20:01:36 +02:00
grindi
40b8ce799b Merge branch 'master' of git://git.assembla.com/free_poker_tools 2009-08-15 21:53:34 +04:00
Ray
46085cba5d Repair missing line in regex, comment out skipping tournaments. 2009-08-15 13:30:31 -04:00
grindi
442d96b862 Removed hack in FTP parser 2009-08-12 14:30:54 +04:00
grindi
dd17155aa9 Fixed bug 7 ( http://trac-git.assembla.com/free_poker_tools/ticket/7 ) 2009-08-12 12:47:18 +04:00
Matt Turnbull
a32d4e053a FulltiltToFpdb handles canceled hands
Better exception handling during parsing
FpdbParseEcxeption takes an optional HID
Stripped pointless __init__s from *ToFpdb subclasses
Logging now has logging.conf config - default is to log only INFO to
file but easily changed to DEBUG for devel work
2009-08-09 15:19:43 +01:00
eblade
f5ba0b5b7f Database: insert missing HandToWrite.payin_amounts var
EverleafToFpdb: remove DEBUG XXXXXXX line
FulltiltToFpdb: pass on converting tournament hands
Hand: add Hand.fee var that Database is looking for
fpdb_import: clean up file update scan code, queue files that have changed in the last 60 seconds for the next importer pass, instead of locking it up reading them now (not that this does anything since FT no longer updates the mtime until it closes the table, but maybe it works with Stars or others)
2009-07-30 21:50:08 -04:00
eblade
c400fd9ba7 FTtoFpdb: default buyin to $0.00+$0.00 and level to 0, they don't seem to be in the FT hh 2009-07-30 20:56:39 -04:00
Worros
68ac5ff554 Q&D hack to fix FTP file reads after update
Contributed by grindi on 2+2 http://forumserver.twoplustwo.com/showpost.php?p=12156328&postcount=166

Removes u'\xff\xfe' from the end of file if they exist.
2009-07-30 12:13:45 +08:00
Ray
94a030922a Clean up handling of mixed games on FTP. 2009-07-22 19:21:00 -04:00
Ray
b963ac0a3d Correct detection of hero in FTP stud games. 2009-07-22 14:06:05 -04:00
Ray
e7441021f2 Fix problem with detecting max on FullTilt. 2009-07-22 13:51:48 -04:00
Ray
9d803957cb Detect mixed games in FTP HH. Fix typos. 2009-07-22 10:24:29 -04:00
Ray
3e0b0e0873 Allow parsing of play money tables and fix some typos. 2009-07-22 08:54:30 -04:00
Ray
af19c3f365 Fix a bug in the Action regex. Thanks Carl. 2009-07-20 14:27:03 -04:00
Ray
10f454ae77 Guess maxseats when not supplied by SiteToFpdb. 2009-07-20 10:01:51 -04:00
Ray
3c64e67750 Merge branch 'master' of git://git.assembla.com/fpdboz 2009-07-19 00:27:29 -04:00
Ray
cbbf820eb5 Add support for tournaments. 2009-07-18 21:33:00 -04:00
Ray
52ecc64505 Update to work with recent Hand.py changes. 2009-07-17 17:07:53 -04:00
Worros
34932c14ee Add index parameter to Plugins
Change constructor to HHC to accept an index arg, so that file reads can seek
2009-07-17 17:45:22 +08:00
Worros
1d6aed3250 Fix datetime.strptime v time.strptime issue 2009-06-09 22:53:09 +08:00
Worros
a261517175 Add additional siteids to db, move player select function 2009-06-01 17:14:31 +08:00
Matt Turnbull
a4ed3a2e68 (No function) Note about matching "FullTiltPoker" 2009-04-04 15:12:45 +01:00
Matt Turnbull
5cd5ad8fa6 Fix bug I introduced that caused empty hands corresponding to splits
between hands (blank lines) to be 'processed' by HHC in Everleaf, PS and
FTP converters.
2009-03-31 07:44:19 +01:00
Matt Turnbull
aca5dc9ed0 Parse another PokerStars datetime.
Make tail work:
  -log instead of print inode # change detected,
  -make sure splitter regexes have groups around them
  -fix a bug
  -increase buffering size to something >> a single hand

Conflicts:

	pyfpdb/HandHistoryConverter.py
2009-03-24 14:58:14 +00:00