def imageFormat(base64): if 'jpeg' in base64: return base64.replace('data:image/jpeg;base64,', '') if 'jpg' in base64: return base64.replace('data:image/jpg;base64,', '') if 'png' in base64: return base64.replace('data:image/png;base64,', '')
def test_base64_decode_variations(self, patch_process_event): base64 = "eyJldmVudCI6IiRwYWdldmlldyIsInByb3BlcnRpZXMiOnsiZGlzdGluY3RfaWQiOiJlZWVlZWVlZ8+lZWVlZWUifX0=" dict = self._dict_from_b64(base64) self.assertDictEqual( dict, { 'event': '$pageview', 'properties': { 'distinct_id': 'eeeeeeegϥeeeee', }, }) # POST with "+" in the base64 self.client.post( '/track/', data={ 'data': base64, 'api_key': self.team.api_token # main difference in this test }) arguments = patch_process_event.call_args[1] self.assertEqual(arguments['team_id'], self.team.pk) self.assertEqual(arguments['distinct_id'], 'eeeeeeegϥeeeee') # POST with " " in the base64 instead of the "+" self.client.post( '/track/', data={ 'data': base64.replace("+", " "), 'api_key': self.team.api_token # main difference in this test }) arguments = patch_process_event.call_args[1] self.assertEqual(arguments['team_id'], self.team.pk) self.assertEqual(arguments['distinct_id'], 'eeeeeeegϥeeeee')
def get_weather_data(): key = args.key webservice = 'weather.measurements.getByCoord' useTrial = args.isTrial useTimestamp = True queryString = 'location=%s,%s' % (args.lat, args.long) message = queryString + '/' + webservice + '/' + key timestamp = str(int(time.time())) if (useTimestamp): message = message + '/' + timestamp if (useTrial): authCode = 'trial' else: digest = hmac.new(key=secret, msg=message, digestmod=hashlib.sha1).digest() base64 = base64.b64encode(digest).decode() authCode = base64.replace('+', '-').replace('/', '_').replace('=', '') baseUrl = 'https://saas.afrigis.co.za/rest/2/' request = baseUrl + webservice + '/' + key + '/' + authCode if (useTimestamp): request = request + '/' + timestamp request = request + '/?' + queryString res = requests.get(request) print(res) return json.loads(res.content)
def test_base64_decode_variations(self, patch_process_event): base64 = "eyJldmVudCI6IiRwYWdldmlldyIsInByb3BlcnRpZXMiOnsiZGlzdGluY3RfaWQiOiJlZWVlZWVlZ8+lZWVlZWUifX0=" dict = self._dict_from_b64(base64) self.assertDictEqual( dict, {"event": "$pageview", "properties": {"distinct_id": "eeeeeeegϥeeeee",},}, ) # POST with "+" in the base64 self.client.post( "/track/", data={ "data": base64, "api_key": self.team.api_token, # main difference in this test }, ) arguments = patch_process_event.call_args[1] self.assertEqual(arguments["team_id"], self.team.pk) self.assertEqual(arguments["distinct_id"], "eeeeeeegϥeeeee") # POST with " " in the base64 instead of the "+" self.client.post( "/track/", data={ "data": base64.replace("+", " "), "api_key": self.team.api_token, # main difference in this test }, ) arguments = patch_process_event.call_args[1] self.assertEqual(arguments["team_id"], self.team.pk) self.assertEqual(arguments["distinct_id"], "eeeeeeegϥeeeee")
def adjust_base64(base64): return base64.replace('data:image/png;base64,',"")