def testUpdateCookie(self): current_cookie = 'traffic=cookies=1&referrer=https://www.godaddy.com/domains/searchresults.aspx?ci=8962&sitename=www.godaddy.com&page=/domains/stack.aspx&server=CORPWEB177&status=200 OK&querystring=ci=13676&shopper=4467367&privatelabelid=1&isc=&clientip=68.211.86.79&referringpath=&referringdomain=;' new_cookie = 'traffic=cookies=1&referrer=https://www.godaddy.com/domains/register.aspx?ci=13686&sitename=www.godaddy.com&page=/domains/register.aspx&server=CORPWEB177&status=200 OK&querystring=ci=13686&shopper=4467367&privatelabelid=1&isc=&clientip=68.211.86.79&referringpath=&referringdomain=; domain=godaddy.com; path=/' new_cookie = WebTools.normalize_cookie(new_cookie) assert WebTools.update_cookie( current_cookie, new_cookie) == new_cookie, "update cookie not working correctly"
def testCookieDict(): import httplib httplib.debug = 1 conn = httplib.HTTPSConnection('www.google.com') headers = WebTools.firefox_headers() uri = 'https://www.google.com/a/filipe-pinto.com/ServiceLogin?service=CPanel&continue=https%3A%2F%2Fwww.google.com%3A443%2Fa%2Fcpanel%2Ffilipe-pinto.com%2FDashboard&passive=true' conn.request("GET", uri, headers=headers) httplib_resp = conn.getresponse() print httplib_resp.getheader('set-cookie') print str(WebTools.cookie_dict(httplib_resp.getheader('set-cookie')))
def testRemoveCookie(self): current_cookie = 'ASP.NET_SessionId=20jyiyrhwd2sie55n3fd4zbo;adc1=US;currency1=potableSourceStr=USD;flag1=cflag=us;currencypopin1=cdisplaypopin=false;traffic=cookies=1&referrer=https://www.godaddy.com/domains/register.aspx?ci=13686&sitename=www.godaddy.com&page=/domains/register.aspx&server=CORPWEB107&status=200 OK&querystring=ci=13686&shopper=4467367&privatelabelid=1&isc=&clientip=68.19.115.231&referringpath=&referringdomain=;gdMyaHubble1=ShopperID=pavhadqhqdjekahhejzandsjrjmgsdfh&Hubble=True;MemAuthId1=uiubfhgicjmeyhyhcfdacgxdyambqiihqamcldadwaldlcpjtagjnfqhmjtiwcga;ShopperId1=qdtelfwdravdqirenikdtdbjzafbbald;MemShopperId1=potableSourceStr=xcncdibcjawcbaidifzbciefeahejedj;MemPDC1=;MemPDCLoc1=;ASPSESSIONIDQQQRBDBT=DBCFIPMBJMEDBGIGLHECGLIM;' new_cookie = WebTools.remove_cookie(current_cookie, 'ASP.NET_SessionId') new_cookie = WebTools.remove_cookie(new_cookie, 'ASPSESSIONID', match='prefix') print new_cookie assert new_cookie == 'adc1=US;currency1=potableSourceStr=USD;flag1=cflag=us;currencypopin1=cdisplaypopin=false;traffic=cookies=1&referrer=https://www.godaddy.com/domains/register.aspx?ci=13686&sitename=www.godaddy.com&page=/domains/register.aspx&server=CORPWEB107&status=200 OK&querystring=ci=13686&shopper=4467367&privatelabelid=1&isc=&clientip=68.19.115.231&referringpath=&referringdomain=;gdMyaHubble1=ShopperID=pavhadqhqdjekahhejzandsjrjmgsdfh&Hubble=True;MemAuthId1=uiubfhgicjmeyhyhcfdacgxdyambqiihqamcldadwaldlcpjtagjnfqhmjtiwcga;ShopperId1=qdtelfwdravdqirenikdtdbjzafbbald;MemShopperId1=potableSourceStr=xcncdibcjawcbaidifzbciefeahejedj;MemPDC1=;MemPDCLoc1=;', 'test failed'
def get(self): ''' Synopsis: Arguments: Exceptions: Returns: ''' #setting the uri uri = 'https://www.google.com/a/filipe-pinto.com/ServiceLogin' #setting the headers headers = WebTools.firefox_headers() #defining the urllib2.opener '###################################################################' '#' '# Getting to login form' '#' '###################################################################' request = urllib2.Request(uri, headers=headers) #submitting GET request try: response = self.urlopener.open(uri) except IOError, ex: if hasattr(ex, 'reason'): self.error = 'Failed to reach a server. ' + 'Reason: ' + e.reason return False elif hasattr(ex, 'code'): self.error = 'Server couldn\'t fulfill the request. ' + 'Error code: ', e.code return False print
def get(self): ''' Synopsis: Returns a cookie jar ''' debug_level = 0 if self.debug: debug_level = 1 opener = urllib2.build_opener( urllib2.HTTPHandler(debuglevel=debug_level), urllib2.HTTPSHandler(debuglevel=debug_level), urllib2.HTTPCookieProcessor(self.cookiejar)) urllib2.install_opener(opener) uri = 'http://www.godaddy.com/default.aspx' headers = WebTools.firefox_headers() request = urllib2.Request(uri, headers=headers) #submitting GET request try: btm = time() response = urllib2.urlopen(request) etm = time() print 'GET - ' + duration(btm, etm) + ' uri = ' + uri except IOError, ex: if hasattr(ex, 'reason'): self.error = 'Failed to reach a server. ' + 'Reason: ' + e.reason return False elif hasattr(ex, 'code'): self.error = 'Server couldn\'t fulfill the request. ' + 'Error code: ', e.code return False print
def get(self, session): ''' Synopsis: Retrieves the details of a customer account. ''' #checking mandatory attributes if self.first_name == '' or self.last_name == '' or self.account_number == '': self.error = 'First name,last name and account # are mandatory' return False ###################################################### # #getting admin page # ###################################################### #setting the uri uri = 'http://www.abpmp.org/adminmanagemembers.cfm' #setting the headers headers = WebTools.firefox_headers() #defining the request request = urllib2.Request(uri, headers=headers) #submitting GET request try: response = session.urlopener.open(request) except IOError, ex: if hasattr(ex, 'reason'): self.error = 'Failed to reach a server. ' + 'Reason: ' + ex.reason return False elif hasattr(ex, 'code'): self.error = 'Server couldn\'t fulfill the request. ' + 'Error code: ', ex.code return False print
def post(self, session, email_subject=LI_DEFAULT_CONNECTION_SUBJECT, email_body=LI_DEFAULT_CONNECTION_BODY): ''' Synopsis: Creates a new connection ''' ############################################################################# # # Step 1 - getting current on email invitations page # ############################################################################# uri = 'https://www.linkedin.com/invite' #setting the headers headers = WebTools.firefox_headers() #defining the request request = urllib2.Request(uri, headers=headers) #submitting GET request try: response = session.urlopener.open(request) except IOError, ex: if hasattr(ex, 'reason'): self.error = 'Failed to reach a server. ' + 'Reason: ' + ex.reason return False elif hasattr(ex, 'code'): self.error = 'Server couldn\'t fulfill the request. ' + 'Error code: ', ex.code return False print
def test_rm_script_tag(self): ''' Synopsis: Opens a file that contains the html Arguments: Expected results: ''' file = open('test_html.html', 'r') html = file.read() content = WebTools.rm_script_tag(html) print content
def get(self): ''' Synopsis: Returns a valid urlopener necessary for the other classes to work. Arguments: Exceptions: Returns: success : Boolean ''' #checking for required attributes if self.login_name == '': self.error = 'Please define login name' return False elif self.password == '': self.error = 'Please define password' return False ###################################################################' # # Getting to login form' # ###################################################################' #setting the uri uri = 'http://www.abpmp.org/displaycommon.cfm?an=22' #setting the headers headers = WebTools.firefox_headers() #defining the request request = urllib2.Request(uri, headers=headers) #submitting GET request try: response = self.urlopener.open(request) except IOError, ex: if hasattr(ex, 'reason'): self.error = 'Failed to reach a server. ' + 'Reason: ' + ex.reason return False elif hasattr(ex, 'code'): self.error = 'Server couldn\'t fulfill the request. ' + 'Error code: ', ex.code return False print
def get(self): ''' Synopsis: Returns a session to the DNS System Arguments: domain_name godaddy_session debug Exceptions: Returns: Success: ''' if self.domain_name == '' or self.gd_session is None: if self.current_domain == '': self.error = 'please define a domain' return False if self.gd_session is None: self.error = 'please get a godaddy login first' return False #creating DNS Session cookiejar #self.cookiejar = cookielib.CookieJar #copying the cookie jar settins of GD Session to DNS Session self.cookiejar = self.gd_session.cookiejar debug_level = 0 if self.debug: debug_level = 1 opener = urllib2.build_opener( urllib2.HTTPHandler(debuglevel=debug_level), urllib2.HTTPSHandler(debuglevel=debug_level), urllib2.HTTPCookieProcessor(self.cookiejar)) urllib2.install_opener(opener) headers = WebTools.firefox_headers() print '**************************************************' print '*' print '* Getting hidden fields from domain page to post to dNS' print '*' print '**************************************************' uri = 'https://dcc.godaddy.com/DomainDetails.aspx?domain=' + self.domain_name #headers['cookie']= self.gd_session.session headers['Host'] = urlparse.urlparse(uri)[1] request = urllib2.Request(uri, headers=headers) #submitting GET request try: btm = time() response = urllib2.urlopen(request) etm = time() print 'GET - ' + duration(btm, etm) + ' uri = ' + uri except IOError, ex: if hasattr(ex, 'reason'): self.error = 'Failed to reach a server. ' + 'Reason: ' + e.reason return False elif hasattr(ex, 'code'): self.error = 'Server couldn\'t fulfill the request. ' + 'Error code: ', e.code return False print
param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('quicktask=') param.append('txtPage=0') all_parms = string.join(param, '&') uri = 'http://www.abpmp.org/adminmanagemembers.cfm?' + all_parms #setting the headers headers = WebTools.firefox_headers() #defining the request request = urllib2.Request(uri, headers=headers) #submitting GET request try: response = session.urlopener.open(request) except IOError, ex: if hasattr(ex, 'reason'): self.error = 'Failed to reach a server. ' + 'Reason: ' + ex.reason return False elif hasattr(ex, 'code'): self.error = 'Server couldn\'t fulfill the request. ' + 'Error code: ', ex.code return False print except Exception, ex: self.error = "Unexpected error:" + ex.message