summaryrefslogtreecommitdiffstats
path: root/sandbox/27c3_ticket_grabber/mechanize_tickets.py
diff options
context:
space:
mode:
authorroot <root@pigstarter.de>2013-11-05 13:24:42 +0100
committerroot <root@pigstarter.de>2013-11-05 13:24:42 +0100
commit5e326f51c58e500285ea3daee91986ee1ea518eb (patch)
tree2b3eccf15e10e4331dcb2d01c9f53620d749f55f /sandbox/27c3_ticket_grabber/mechanize_tickets.py
parentae627d2aa73ea6862af3985f1c07e95c6d493275 (diff)
sandbox -> .graveyard
Diffstat (limited to 'sandbox/27c3_ticket_grabber/mechanize_tickets.py')
-rw-r--r--sandbox/27c3_ticket_grabber/mechanize_tickets.py53
1 files changed, 0 insertions, 53 deletions
diff --git a/sandbox/27c3_ticket_grabber/mechanize_tickets.py b/sandbox/27c3_ticket_grabber/mechanize_tickets.py
deleted file mode 100644
index 1f12a996..00000000
--- a/sandbox/27c3_ticket_grabber/mechanize_tickets.py
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/usr/bin/python
-import mechanize
-import cookielib
-import time,sys
-USERNAME = 'momo'
-PASSWORD = ''
-
-
-def main():
- try:
- br = init_browser()
- while not do_login(br):
- print ("Could Not Login, retrying!")
- while not fetch_ticket(br):
- time.sleep(0.2)
- print ("Could not fetch ticket, retrying!")
- except Exception,e:
- print ("Caught Exception: %s" % str(e))
- exit (1)
- print ("We won? yay")
- exit(0)
-
-def init_browser():
- br = mechanize.Browser()
- br.open("https://presale.events.ccc.de/order")
- cj = cookielib.LWPCookieJar()
- br.set_cookiejar(cj)
- br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]
- return br
-def do_login(br):
- br.select_form(nr=0)
- br.form['account[username]'] = USERNAME
- br.form['account[password]'] = PASSWORD
- br.submit()
- ret = br.response().read()
- if 'Signed in successfully.' in ret:
- if not "Confirm Order" in ret:
- print("Something else is wrong, cannot find 'Confirm Order' button!")
- raise Exception("Cannot find Confirm Order button")
- return True
- else: return False
-
-def fetch_ticket(br):
- br.select_form(nr=0)
- br.submit()
- ret = br.response().read()
- if not 'There are currently not enough tickets available.' in ret:
- print ("we won? Better sleep some time to be sure")
- return True
- else: return False
-
-if __name__ == "__main__":
- main()