This parser hasn't been updated/completed since a very early version of HHC
File is updated to the point where it will now run and just crashes on a regex
setPrintTestData: Indicate you would like to print test data when importing
setFakeCacheHHC: Indicate you want to access the HHC after an import run
getCachedHHC: Retrieve HHC
Also modified the main import loop to pass self.settings['testData'] to the database insert and records the HHC if requested
Comment from code:
hand.players includes people that are sitting out on some sites for cash games
actionStreets[1] is 'DEAL', 'THIRD', 'PREFLOP', so any player dealt cards
must act on this street if dealt cards. Almost certainly broken for the 'all-in blind' case
and right now i don't care - CG
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.
"PokerStars Game #47587046512: Tournament #294420919, $5.00+$0.50 USD Mixed PLH/PLO (Hold'em Pot Limit) - Level XVII (500/1000) - 2010/08/01 20:39:48 ET"
We already parsed up to 'Mixed' and accepted HORSE/HOSE and 8-Game previously. Added PLH/PLO to the list.
$1.40 KO SnG from Stars.
Worth noting that neither the HH nor the tournament summary contain any bounty information.
The only place it was noted was in the individual tourney mailout
"You have also received USD 1.25 in Knockout Bounties for this tournament. You won bounties for the following players: odotb, Yvbo, bumbastik7, gliberis, __DMN__54321"
Had a report on the 2+2 thread that:
File "C:\Documents and Settings\b\Desktop\fpdb\pyfpdb\GuiAutoImport.py", line 160, in do_import
self.importer.runUpdated()
File "C:\Documents and Settings\b\Desktop\fpdb\pyfpdb\fpdb_import.py", line 371, in runUpdated
(stored, duplicates, partial, errors, ttime) = self.import_file_dict(self.database, file, self.filelist[file][0], self.filelist[file][1], None)
File "C:\Documents and Settings\b\Desktop\fpdb\pyfpdb\fpdb_import.py", line 467, in import_file_dict
print "fpdb_import: sending hand to hud", hand.dbid_hands, "pipe =", self.caller.pipe_to_hud
IOError: [Errno 9] Bad file descriptor
Was happening, which is a crash attempting to print self.caller.pipe_to_hud
This patch doesn't fix the problem, but should give some indication in the log that it happened.
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.
Decided to knock up a quick proof of concept for fetching and parsing tournament results from a website.
Specifically uses:
- Pythons Beautiful Soup library
- P5s results pages - replace playername with the desired p5s username (eg. taypaur)
Of note; no tournament ids are displayed on any of the sites, so for this to work we may need to add a field like 'p5sid'
- 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
Conflicts:
pyfpdb/Database.py
pyfpdb/DerivedStats.py
pyfpdb/SQL.py
pyfpdb/SummaryEverleaf.py
pyfpdb/TournamentTracker.py
pyfpdb/Tourney.py
run_fpdb.py
Stars HHC, HHC itself and Hand.
Should not get the first 100 characters of an failing hand in the log, which contains the handid for later reference.
Played around with the number of characters a while ago - 100 chars is about the sweet spot.
Kangaderoo has a patch which potentially fixes storage and display issues for users who do not have their database text storage as utf8.
Functions and variables added to Charset to disect the patch
- Remove added whitespace
- Reformatted debug strings in preferred printf style (and starting with DEBUG:)
- Swapped len(aggrers)>0 and i>0 for short circuit evaluation, and reformatted spacing for consistent coding style
-- (NOTE: for NLHE this will definitely be faster as less hands go to flop - may be slower for limit games)
Also added a couple of comments near enumerate() calls about 2.5 to 2.6 syntax
Fix a couple of crashers
- Make sure last session in list is displayed correctly
- Actually calculate hands/hour (Thanks Socratic)
- Make graph display the correct number of sessions