예제 #1
0
    def test_login(self):
        global user
        url = site_url + 'user/login/{0}'.format(facebook_token)
        requests.post(url)

        # Check if user has been registered
        user = User.all().filter('facebook_token', facebook_token).get()
        if user is not None:
            self.assertTrue(user.facebook_token == facebook_token)
        else:
            self.assertTrue(False)
예제 #2
0
    def test_login(self):
        global user
        url = site_url + "user/login/{0}".format(facebook_token)
        requests.post(url)

        # Check if user has been registered
        user = User.all().filter("facebook_token", facebook_token).get()
        if user is not None:
            self.assertTrue(user.facebook_token == facebook_token)
        else:
            self.assertTrue(False)
예제 #3
0
 def mumbleMonitor(self):
     try:
         response = requests.post(self.__prefix + 'metrics/2/points', data={"value": "1"}, headers=self.__header)
     except requests.ConnectionError:
         raise Exception("REST Server not found!")
     json_data = json.loads(response.text)
     return
예제 #4
0
def send_message(chat, mess, reply_id=-1):
    try:
        im = 'https://api.telegram.org/bot{}/sendMessage'.format(TOKEN_TG)
        if reply_id > 0:
            r = requests.post(im,
                              data={
                                  'chat_id': chat,
                                  'text': mess,
                                  'reply_to_message_id': reply_id
                              })
        else:
            r = requests.post(im, data={'chat_id': chat, 'text': mess})
    except:
        print('Error getting updates')
        return False

    if not r.status_code == 200: return False
    if not r.json()['ok']: return False
예제 #5
0
def http_request_post(url, payload, body_content_workflow=False):
	"""
		payload = {'key1': 'value1', 'key2': 'value2'}
	"""
	result = requests.post(url, 
		data=payload, 
		headers=headers, 
		stream=body_content_workflow, 
		timeout=timeout, 
		proxies=proxies,
		allow_redirects=allow_redirects)
	return result
예제 #6
0
def send_sticker(chat, file_id):
    try:
        im = 'https://api.telegram.org/bot{}/sendSticker'.format(TOKEN_TG)
        r = requests.post(im, data={'chat_id': chat, 'sticker': file_id})
    except:
        print('Error getting updates')
        return False

    if not r.status_code == 200:
        print('Error. Can\'t send sticker')
        return False
    if not r.json()['ok']: return False
예제 #7
0
def send_video(chat, url):
    try:
        im = 'https://api.telegram.org/bot{}/sendVideo'.format(TOKEN_TG)
        r = requests.post(im, data={'chat_id': chat, 'video': url})
    except:
        print('Error getting updates')
        return False

    if not r.status_code == 200:
        print('Error. Can\'t send video')
        return False
    if not r.json()['ok']: return False
예제 #8
0
def get_short_link(link):
    try:
        im = 'https://api.vk.com/method/utils.getShortLink'
        r = requests.post(im, data={'url': link, 'access_token': TOKEN_VK})
    except:
        print('Error getting updates')
        return False

    if not r.status_code == 200:
        print('Error. Can\'t get short link')
        return link
    return r.json()['response']['short_url']
예제 #9
0
파일: common.py 프로젝트: D0n9/weakfilescan
def http_request_post(url, payload, body_content_workflow=False):
    """
		payload = {'key1': 'value1', 'key2': 'value2'}
	"""
    result = requests.post(
        url,
        data=payload,
        headers=headers,
        stream=body_content_workflow,
        timeout=timeout,
        proxies=proxies,
        allow_redirects=allow_redirects,
    )
    return result
예제 #10
0
def http_request_post(url, payload, body_content_workflow=False, allow_redirects=allow_redirects):
	"""
		payload = {'key1': 'value1', 'key2': 'value2'}
	"""
	try:
		result = requests.post(url, 
			data=payload, 
			headers=headers, 
			stream=body_content_workflow, 
			timeout=timeout, 
			proxies=proxies,
			allow_redirects=allow_redirects)
		return result
	except Exception, e:
		# 返回空的requests结果对象
		return __requests__.models.Response()
예제 #11
0
def http_request_post(url, payload, body_content_workflow=False, allow_redirects=allow_redirects):
	"""
		payload = {'key1': 'value1', 'key2': 'value2'}
	"""
	try:
		result = requests.post(url, 
			data=payload, 
			headers=headers, 
			stream=body_content_workflow, 
			timeout=timeout, 
			proxies=proxies,
			allow_redirects=allow_redirects,
			verify=allow_ssl_verify)
		return result
	except Exception, e:
		# 返回空的requests结果对象
		return __requests__.models.Response()
예제 #12
0
def send_document(chat, title, url):
    try:
        file = requests.get(url)
    except:
        print('Error getting file')

    try:
        headers = 'Content-Type: multipart/form-data'
        im = 'https://api.telegram.org/bot{}/sendDocument'.format(TOKEN_TG)
        r = requests.post(im,
                          data={'chat_id': chat},
                          files={'document': (title, file.content)})
    except:
        print('Error getting updates')
        return False

    if not r.status_code == 200:
        print('Error. Can\'t send doc')
        return False
    if not r.json()['ok']: return False
예제 #13
0
  def send(self):
    """
    Send the current report to IOPipe
    """
    json_report = None
    try:
      json_report = json.dumps(self.report)
    except Exception as err:
      print("Could not convert the report to JSON. Threw exception: {}".format(err))
      print('Report: {}'.format(self.report))

    if json_report:
      try:
        response = requests.post('https://metrics-api.iopipe.com/v0/event', data=json.dumps(self.report))
        print('POST response: {}'.format(response))
        print(json.dumps(self.report, indent=2))
        self._sent = True
      except Exception as err:
        print('Error reporting metrics to IOPipe. {}'.format(err))
        print(json.dumps(self.report, indent=2))
예제 #14
0
def checking_posts(vk_group, offset=0, timestamp=0, limit=10):
    try:
        im = 'https://api.vk.com/method/wall.get'
        r = requests.post(im,
                          data={
                              'domain': vk_group,
                              'offset': offset,
                              'count': limit,
                              'access_token': TOKEN_VK,
                              'filter': 'owner'
                          })
    except:
        print('Error getting updates')
        return False

    if not r.status_code == 200:
        print('Error. Can\'t get post')
        return False
    fc = []
    for p in r.json()['response']:
        if not type(p) is int:
            if p['date'] > timestamp:
                fc.append(p['date'])
    return fc
예제 #15
0
def get_post(vk_group, offset=0, count=1):
    try:
        im = 'https://api.vk.com/method/wall.get'
        r = requests.post(im,
                          data={
                              'domain': vk_group,
                              'offset': offset,
                              'count': count,
                              'access_token': TOKEN_VK,
                              'filter': 'owner'
                          })
    except:
        print('Error getting updates')
        return False

    if not r.status_code == 200:
        print('Error. Can\'t get post')
        return False

    posts = []
    for post in r.json()['response']:
        if not type(post) is int:
            text = post['text']

            text = text.replace('<br>', '\n')
            text = text.replace('&amp', '&')
            text = text.replace('&quot', '"')
            text = text.replace('&apos', "'")
            text = text.replace('&gt', '>')
            text = text.replace('&lt', '<')

            try:
                profile_to_replace = re.findall(r'\[(.*?)\]', text)
                profile_link = re.findall(r'\[(.*?)\|', text)
                profile_name = re.findall(r'\|(.*?)\]', text)
                profiles = []

                # заменаем ссылку на профиль в тексте

                for i in range(len(profile_link)):
                    profiles.append('{} ({})'.format(
                        profile_name[i],
                        get_short_link('vk.com/' + profile_link[i])))

                counter = 0
                for i in profile_to_replace:
                    text = text.replace('[' + i + ']', profiles[counter])
                    counter += 1
            except:
                pass

            try:
                links = re.findall(
                    r'http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+',
                    text)
                short_links = []
                for l in links:
                    short_links.append(get_short_link(l))
                for i in range(len(links)):
                    text = text.replace(links[i], short_links[i])
            except:
                pass
            ##########=========-------------
            #
            # А потом ещё надо заменять ссылки на короткие через
            # /^(https?:\/\/)?([\w\.]+)\.([a-z]{2,6}\.?)(\/[\w\.]*)*\/?$/
            # Но про это будет потом
            #
            ##########=========-------------

            photo = []
            video = []
            doc = []
            gif = []

            if 'attachments' in post:
                for item in post['attachments']:
                    if item['type'] == 'photo':
                        if 'src_xbig' in item['photo']:
                            photo.append(item['photo']['src_xbig'])
                        elif 'src_big' in item['photo']:
                            photo.append(item['photo']['src_big'])
                        else:
                            photo.append(item['photo']['src_small'])
                    if item['type'] == 'doc':
                        if item['doc']['ext'] == 'gif':
                            gif.append(item['doc']['url'])
                        else:
                            doc.append(
                                [item['doc']['title'], item['doc']['url']])
                    if item['type'] == 'video':
                        link_vid = get_short_link(
                            'https://vk.com/video{}_{}'.format(
                                item['video']['owner_id'],
                                item['video']['vid']))
                        video.append([item['video']['title'], link_vid])
            posts.append([text, photo, gif, doc, video])

    return posts