def make_cookiejar(): cj = mechanize.MozillaCookieJar(filename=filename) try: cj.revert() except IOError, exc: if exc.errno != errno.ENOENT: raise
def fetch(self, snarfer, url, resp): br = mechanize.Browser() cj = mechanize.MozillaCookieJar() cj.load(config.cookiejar) br.set_cookiejar(cj) br.open(url) if (br.title().find("ogin required") != -1): print "Logging into Burrowiki" br.open(config.wikiloginpage) br.select_form(name="userlogin") br["wpName"] = config.wikiuser br["wpPassword"] = config.wikipass br.find_control("wpRemember").items[0].selected = True br.submit() br.open(url) cj.save(config.cookiejar) return {'description': br.title(), 'url': url}
def __init__(self, cookiejar, passwords): mechanize.Browser.__init__(self) cj = None if cookiejar: cj = mechanize.MozillaCookieJar() cj.load(cookiejar) self.set_cookiejar(cj) self.cj = cj socket.setdefaulttimeout(10) for url in passwords: self.add_password(url, passwords[url][0], passwords[url][1]) self.set_handle_robots(False) self.set_handle_refresh(False) self.addheaders = [ ('User-agent', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/537.13+ (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2') ] # self.set_debug_http(True) self.set_proxies({'http' : 'proxy.ice-nine.org:3128', 'https' : 'proxy.ice-nine.org:3128' })
def verify_credentials(username, password): cj = mechanize.MozillaCookieJar() br = mechanize.Browser() br.set_cookiejar(cj) br = utils.setup_browser(br) try: br.open(urls.BASE_URL) try: br.select_form(name='login') br['login_user'] = username br['password'] = password #br.find_control(name='autologin').items[0].selected = True except mechanize.FormNotFoundError: click.echo( 'Error occurred. Code VC-FNFE. Kindly contact developer') return False except NameError: click.echo( 'Error occurred. Code VC-NE. Kindly contact developer') return False except mechanize.ControlNotFoundError: click.echo( 'Error occurred. Code VC-CNFE. Kindly contact developer') return False br.submit() for link in br.links(): if link.text == 'my account': utils.save_cookies(cj) click.echo('Account Verified!') return True click.echo('Wrong Username/Password. Try Again') return False except mechanize.URLError: click.echo( 'Error in connecting to internet. Please check your internet connection' ) return False
#br.form['user'] = "******" #br.form['passwd'] = "Xds<2718" #print br.form #response = br.submit(id='login_submit', label="Log in >>") br.click(type="submit") print br._ua_handlers['_cookies'].cookiejar #print response.read() sys.exit(0) """ cookiejar = mechanize.MozillaCookieJar() cookiejar.load('cookies.txt') br.set_cookiejar(cookiejar) print br._ua_handlers['_cookies'].cookiejar vaporlist = br.open("https://rateyourmusic.com/") #vaporlist = br.open("http://stackoverflow.com/") print vaporlist.read() sys.exit(0) br.select_form(nr=0) br.open("http://httpbin.org/forms/post") br.select_form(nr=0)
def BROWSER(self,cookie3=''): """ :param url: """ # global br, cj, r, proxy, User_Pass br = mechanize.Browser() # print br # Cookie Jar # fo=os.getcwd()+"\\cookies\\" # try : # os.mkdir(fo) # except: # pass # os.chdir(fo) # folder=sys.path.insert(0,'/cookies') if self.cookie3=='': fo = os.getcwd().replace('\\','/') # pathname = os.path.join("cookies", cookie3) site = urlparse2(self.url).hostname if not os.path.isdir(fo + "/cookies/"+site ):os.mkdir(fo + "/cookies/"+site ) chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" self.cookie3 = fo + "/cookies/"+site +'/'+''.join([random.choice(chars) for x in range(5)]) + ".txt" self.cj = mechanize.MozillaCookieJar() else: self.cj = mechanize.MozillaCookieJar() self.cj.load(self.cookie3) opener = mechanize.build_opener(mechanize.HTTPCookieProcessor(self.cj)) br.set_cookiejar(self.cj) # os.chdir(..) # Browser options br.set_handle_equiv(True) br.set_handle_gzip(True) br.set_handle_referer(True) # no allow everything to be written to br.set_handle_robots(False) # no robots br.set_handle_refresh(True) # can sometimes hang without this br.set_handle_redirect(True) # Follows refresh 0 but not hangs on refresh > 0 br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) # Want debugging messages? #br.set_debug_http(True) #br.set_debug_redirects(True) #br.set_debug_responses(True) # User-Agent (this is cheating, ok?) br.addheaders = [('User-Agent', 'Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; T-Mobile myTouch 3G Slide Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'), ('Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'), ('Accept-Language', 'en-gb,en;q=0.5'), ('Accept-Encoding', 'gzip,deflate'), ('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7'), ('Keep-Alive', '115'), ('Connection', 'keep-alive'), ('Cache-Control', 'max-age=0'), ('Referer', 'http://yahoo.com')] # # If the protected site didn't receive the authentication data you would # # end up with a 410 error in your face # br.add_password('http://safe-site.domain', 'username', 'password') # br.open('http://safe-site.domain') # Open some site, let's pick a random one, the first that pops in mind: # Proxy and user/password #proxy = "61.233.25.166:80" # proxy = "202.202.0.163:3128" # proxy=self.proxy # Proxy # dd=re.findall('None:None', proxy) if self.proxy != [] and self.proxy != '' and not (re.findall('None', self.proxy)): br.proxies = br.set_proxies({"http": self.proxy}) # br.proxies=br.set_proxies( proxy) if self.User_Pass != [] and self.User_Pass != '' and not (re.findall('None:None', self.User_Pass)): br.add_proxy_password(self.User_Pass.split(":")[0], self.User_Pass.split(":")[1]) # if r!={}: # rr = br.open(url) # c= cookielib.Cookie(version=0, name='PON', value="xxx.xxx.xxx.111", expires=365, port=None, port_specified=False, domain='xxxx', domain_specified=True, domain_initial_dot=False, path='/', path_specified=True, secure=True, discard=False, comment=None, comment_url=None, rest={'HttpOnly': False}, rfc2109=False) # cj.set_cookie(c0) self.cj.save( self.cookie3) return br