当前位置: 首页>>代码示例>>Python>>正文


Python Session.send方法代码示例

本文整理汇总了Python中requests.Session.send方法的典型用法代码示例。如果您正苦于以下问题:Python Session.send方法的具体用法?Python Session.send怎么用?Python Session.send使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在requests.Session的用法示例。


在下文中一共展示了Session.send方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: main2

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
def main2():
    # http://stackoverflow.com/questions/10247054/http-post-and-get-with-cookies-for-authentication-in-python

    s1 = Session()

    prepped = Request(
        "GET",  # or any other method, 'POST', 'PUT', etc.
        auth_url3,
        # data=data,
        # headers=headers
        # ...
    ).prepare()

    resp = s1.send(prepped)

    print "----------------"
    print "Cookie Details  ==  " + resp.request.headers["Cookie"]
    print "----------------"

    # Not Working
    headers = {"Cookie": resp.request.headers["Cookie"] + " ; company_guid=6f65b34d-b6f4-4abd-b14a-408b8a11029b"}

    # working : if this cookie expires then get the new one from browser
    #    headers = {
    #               "Cookie" : "AuthSession=aba1d850-5814-48f5-896f-2989609f02c5" + "; company_guid=6f65b34d-b6f4-4abd-b14a-408b8a11029b"
    #              }

    # working
    #    headers = {
    #               "Cookie" : "AuthSession=aba1d850-5814-48f5-896f-2989609f02c5; company_guid=6f65b34d-b6f4-4abd-b14a-408b8a11029b"
    #              }

    print "----------------"
    print headers
    print "----------------"

    prepped = Request(
        "GET",  # or any other method, 'POST', 'PUT', etc.
        response_url,
        # data=data,
        headers=headers
        # ...
    ).prepare()

    resp = s1.send(prepped)

    #    print(resp.status_code)
    #    print resp.text
    WriteToFile(
        "/home/rtandon/Downloads/Work/0037_TP5952_TCCC Response Time/Requirements/Response_Time_Json_Sample3.txt",
        resp.text,
    )
    print "done"
开发者ID:rtandon,项目名称:apps,代码行数:55,代码来源:http_call.py

示例2: get_http_request

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
    def get_http_request(url, payload, method='POST', headers=None, use_proxy=False, use_proxy_auth=False, trust_env=True):
        try:
            session = Session()
            session.trust_env = trust_env
            session.proxies = Util.get_proxies() if use_proxy else None
            session.auth = Util.get_proxy_auth() if use_proxy_auth else None

            request = Request(
                'POST' if method not in ('GET', 'POST') else method,
                url,
                data=payload if method == 'POST' else None,
                params=payload if method == 'GET' else None,
                headers=headers
            )

            prepped = request.prepare()

            response = session.send(
                prepped,
                timeout=app.config['HTTP_REQUESTS_TIMEOUT']
            )

            session.close()
        except Exception, e:
            response = Response()
            response.raise_for_status()
            return response, 'Error al realizar la consulta - Motivo: {}'.format(e.message)
开发者ID:stabora,项目名称:nbsf,代码行数:29,代码来源:util.py

示例3: ApiRequest

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
class ApiRequest(object):
    """API request class, this will create prepared reqeusts and have
    basic auth data prepared on the request.
    """
    protocol = 'https'

    def __init__(self, api_key, subdomain):
        self.session = Session()
        self.subdomain = subdomain
        self.api_key = api_key

    def _prepare_request(self, api_url, method='GET', data=None):
        url = api_url.format(protocol=self.protocol, subdomain=self.subdomain)
        request = Request(
            url=url, method=method,
            headers={'authorization': 'Bearer {}'.format(self.api_key),
                     'Content-type': 'application/json'},
            data=json.dumps(data))
        return self.session.prepare_request(request)

    def post(self, api_url, data, headers={}):
        prepared_request = self._prepare_request(
            api_url=api_url, method="POST", data=data)
        return self.session.send(prepared_request)

    def get(self, api_url):
        prepared_request = self._prepare_request(api_url=api_url)
        return self.session.send(prepared_request)
开发者ID:vedarthk,项目名称:python-namely,代码行数:30,代码来源:api_client.py

示例4: __request

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
    def __request(self, path, method="GET", query=None, body=None,
                  headers=None):
        """
        Place a request on the remote API and return the result.

        :param path:
        :param method:
        :param query:
        :param body:
        :param headers:
        :return:
        """
        if headers is None:
            headers = {}
        if method.upper() in {"PUT", "POST"}:
            headers["Role"] = ",".join(self.role)
        headers["Date"] = http_date()
        if self.signer:
            headers["Authorization"] = self.__authorize(headers)
        session = Session()
        url = self.url + expand_user(path, self.user)
        request = Request(method, url, headers=headers, params=query, data=body)
        request = request.prepare()
        log.debug(format_prepared_request(request))
        if self.disable_ssl_certificate_validation is True:
            return session.send(request, verify=False)
        else:
            return session.send(request, verify=True)
开发者ID:tokyo-jesus,项目名称:python-manta,代码行数:30,代码来源:_client.py

示例5: scrape

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
    def scrape(self):
        s = Session()
        self.table_headers = []

        # first request
        request_headers = {}
        for k, v in StLouis.DEFAULT_PAYLOAD.iteritems():
            request_headers[k] = v

        self.logger.info('Beginning scrape of stlouisfed.org')
        req = requests.Request('POST', StLouis.URL, headers=request_headers)
        prepped = s.prepare_request(req)
        req_payload = self._parse_table(self.table_headers, self.documents, s.send(prepped))
        self.logger.info('Initial request parsed %d rows' % len(self.documents))
        page_requests = 1


        # The "next" available pages are parsed and returned for each response
        # Keep requesting new pages while some "next" page is parsed from the response
        while (req_payload):
            req = requests.Request('POST', StLouis.URL, data=req_payload, headers=request_headers)
            prepped = s.prepare_request(req)
            req_payload = self._parse_table(self.table_headers, self.documents, s.send(prepped))
            page_requests += 1
        self.logger.info('Completed %d total page requests. Parsed %d total rows' % 
            (page_requests, len(self.documents)))
开发者ID:seanjh,项目名称:scrapeFRB,代码行数:28,代码来源:stlfrb.py

示例6: main

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
def main():
    session = Session()
    marketReq = showOrderbookCompactRequest()
    ratesReq = showRatesRequest()

    market = Market(session.send(marketReq).json())
    rates = session.send(ratesReq).json()
    course = Course(rates)
    print "---------------------------------------------"
    print "\t[*] Asks [*]"
    print "\tvolume: %f" % market.get_BidVolume()
    print "\tmedian price: %f" % market.get_BidMedian()
    print "\tavg price: %f" % market.get_BidAverage()
    print "\tcheapest: %f" % market.get_BidLowest()
    print "\tmost expensive: %f" % market.get_BidHighest()
    print "---------------------------------------------"
    print "\t[*] Bid [*]"
    print "\tvolume: %f" % market.get_AskVolume()
    print "\tmedian price: %f" % market.get_AskMedian()
    print "\tavg price: %f" % market.get_AskAverage()
    print "\thighest bid: %f" % market.get_AskHighest()
    print "\tlowest bid: %f" % market.get_AskLowest()
    print "---------------------------------------------"
    print "\t[*] courses [*]"
    print "\texact: %f" % course.getCurrentRate()
    print "\t12 Hours: %f" % course.get12hWeighted()
    print "\t3 hours: %f" % course.get3hWeighted()
开发者ID:blanky0230,项目名称:python_bitcoin.de_client,代码行数:29,代码来源:btcde.py

示例7: send_stuck_machine_support_request

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
    def send_stuck_machine_support_request(
            self, machine_id, machine_address, contact_mail_address):
        if self.dry_run:
            return
        session = Session()
        req = Request('GET', SUPPORT_HOST + 'anonymous_requests/new')
        resp = session.send(session.prepare_request(req))
        if resp.status_code != 200:
            raise SupportRequestError(
                'Got {} HTTP status reading the support form page'.format(
                    resp.status_code))
        parser = FormParser()
        parser.feed(resp.text)
        found_fields = set(parser.hidden_fields)
        found_fields.update(set(parser.visible_fields))
        if found_fields != EXPECTED_FIELDS:
            print(
                "Warning: Found field names differ from expected field names.")
            print("  not expected: {}".format(
                found_fields.difference(EXPECTED_FIELDS)))
            print("  missing: {}".format(
                EXPECTED_FIELDS.difference(found_fields)))
        if 'sev-2' not in parser.importance_field_values:
            print("Warning: Expected severity 'sev-2' not found in form data.")

        form_data = parser.hidden_fields
        form_data[EMAIL_FIELD_NAME] = contact_mail_address
        form_data[SUBJECT_FIELD_NAME] = 'Machine stuck in provisioning state'
        form_data[DESCRIPTION_FIELD_NAME] = dedent("""\
            Please delete the machine {} which is stuck in provisioning.

            Thank you
        """).format(machine_id)
        form_data[SEVERITY_FIELD_NAME] = 'sev-2'
        form_data[IP_ADDRESS_FIELD_NAME] = machine_address
        # A text field that is visibly hidden.
        form_data[COMMENT_BODY_FIELD_NAME] = ''

        req = Request(
            'POST', SUPPORT_HOST + parser.post_url, data=form_data)
        resp = session.send(session.prepare_request(req))
        if resp.status_code != 200:
            raise SupportRequestError(
                'Server response to support form POST: {}'.format(
                    resp.status_code))
        with open('joyent-form-response.html', 'w') as f:
            f.write(resp.text.encode('utf-8'))
        mo = re.search('<div id="error">(.*?)</div>', resp.text)
        if mo is not None:
            raise SupportRequestError(
                'Server sent error message: {}'.format(mo.group(1)))
        print("Deletion request for {} ({}) submitted.".format(
            machine_id, machine_address))
        if resp.text.find("You're almost done creating your request") < 0:
            print(
                "Warning: could not find the expected confirmation message "
                "in the support server's response.")
开发者ID:mjs,项目名称:juju,代码行数:59,代码来源:joyent.py

示例8: main

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
def main(args):
    if len(args) != 1:
       print "Usage monitor.py [number of entries to retrieve]"
       sys.exit(1)
    elif args[0].isdigit() == False:
       print "Usage monitor.py [number of entries to retrieve]"
       sys.exit(1)
    offset = int(args[0])
    operation = 'ct/v1/get-sth'
    url = 'http://ct.googleapis.com/aviator/{}'.format(operation)
    
    s = Session()
    r = Request('GET', url)
    
    prepped = r.prepare()
    
    r = s.send(prepped)
    
    numcerts = 0
    
    if r.status_code == 200:
        sth = r.json()
        numcerts = sth['tree_size']
    
    operation = 'ct/v1/get-entries'
    url = 'http://ct.googleapis.com/aviator/{}'.format(operation)
    
    endindex = numcerts - 1
    startindex = numcerts - offset
    
    params = urllib.urlencode({'start':startindex,'end':endindex})
    
    
    s = Session()
    
    r = Request('GET',
                 '{}?{}'.format(url,params),
                 )
    
    prepped = r.prepare()
    
    r = s.send(prepped)
    
    if r.status_code == 200:
        entries = r.json()['entries']
        for i in entries:
            print "End entity cert"
            parse_leafinput(base64.b64decode(i['leaf_input']))
            print "Signing cert chain"
            parse_asn1certs(base64.b64decode(i['extra_data']))
    else:
        print r.status_code
        print r.text
开发者ID:konklone,项目名称:CTPyClient,代码行数:55,代码来源:monitor.py

示例9: __send_request

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
    def __send_request(self, url, data=None, method='GET', isKeyRequired=True):
        if isKeyRequired and not self._key:
            raise Exception('API Key is required.  Get the API key from http://rimuhosting.com/cp/apikeys.jsp.  Then export RIMUHOSTING_APIKEY=xxxx (the digits only) or add RIMUHOSTING_APIKEY=xxxx to a ~/.rimuhosting file.')
        headers = {
            'Content-Type': 'application/json',
            'Accept': 'application/json'
        }
        if isKeyRequired:
            headers['Authorization']= "rimuhosting apikey=%s" % self._key
        
        url = urllib.parse.urljoin(self._base_url, url)

        data = data if isinstance(data, str) else json.dumps(data)

        s = Session()
        req = Request(method, url,
                      data=data,
                      headers=headers
                      )
        prepped = s.prepare_request(req)
        resp = s.send(prepped, timeout=3600)
        if not resp.ok:
            message = resp.text
            try: 
                j2 = resp.json()
                for val in j2:
                  if "error_info" in j2[val] and "human_readable_message" in j2[val]["error_info"]:
                      message = j2[val]["error_info"]["human_readable_message"]
                  break
            finally:
                raise Exception(resp.status_code, resp.reason, message)
        
        return resp
开发者ID:pbkwee,项目名称:RimuHostingAPI,代码行数:35,代码来源:rimuapi.py

示例10: validate

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
    def validate(self):
        """Run validation using HTTP requests against validation host

        Using rules provided by spec, perform requests against validation host
        for each rule. Request response is verified to match the spec respsonse
        rule.  This will yield either a :py:cls:`ValidationPass` or
        :py:cls:`ValidationFail` response.
        """
        session = Session()
        if not self.verify and hasattr(urllib3, 'disable_warnings'):
            urllib3.disable_warnings()
        for rule in self.spec.get_rules():
            req = rule.get_request(self.host, self.port)
            if self.debug:
                pprint.pprint(req.__dict__)
            try:
                resp = session.send(req.prepare(), allow_redirects=False,
                                    verify=self.verify)
                if self.debug:
                    pprint.pprint(resp.__dict__)
                if rule.matches(resp):
                    yield ValidationPass(rule=rule, request=req, response=resp)
            except (ConnectionError, SSLError) as exc:
                # No response yet
                yield ValidationFail(rule=rule, request=req, response=None,
                                     error=exc)
            except ValidationError as exc:
                # Response received, validation error
                yield ValidationFail(rule=rule, request=req, response=resp,
                                     error=exc)
开发者ID:agjohnson,项目名称:validatehttp,代码行数:32,代码来源:validate.py

示例11: main

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
def main(args):
    if len(args) <= 1:
       print "Usage getentries.py startindex endindex"
       sys.exit(1)
    elif args[0].isdigit() == False or args[1].isdigit() == False:
       print "Usage getentries.py startindex endindex" 
       sys.exit(1)
    startindex = int(args[0])
    endindex = int(args[1])
    
    operation = 'ct/v1/get-entries'
    url = 'http://ct.googleapis.com/aviator/{}'.format(operation)
    
    
    params = urllib.urlencode({'start':startindex,'end':endindex - 1})
    
    s = Session()
    r = Request('GET',
    '{}?{}'.format(url,params),
    )
    
    prepped = r.prepare()
    r = s.send(prepped)
    if r.status_code == 200:
	entries = r.json()['entries']
	print entries
    else:
	print r.status_code
	print r.text
开发者ID:Phracks,项目名称:CTPyClient,代码行数:31,代码来源:getentries.py

示例12: main4

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
def main4():
    # http://stackoverflow.com/questions/10247054/http-post-and-get-with-cookies-for-authentication-in-python
    # auth_url3 = "https://sso-platform.syncapse-staging.com/ajax_request/[email protected]&password=Testing."
    # response_url = "https://manage.syncapse-staging.com/posts/responses"
    s = requests.Session()
    r1 = s.get(auth_url3)
    print r1.headers

    # working
    headers = {"Cookie": r1.headers["set-cookie"] + " ; company_guid=6f65b34d-b6f4-4abd-b14a-408b8a11029b"}

    s1 = Session()
    prepped = Request(
        "GET",  # or any other method, 'POST', 'PUT', etc.
        response_url,
        # data=data,
        headers=headers
        # ...
    ).prepare()

    resp = s1.send(prepped)

    WriteToFile("/home/rtandon/Downloads/Work/importdata/TCCC_Response/Response_Time_Json_Sample3_main4.txt", resp.text)

    #    print resp.text
    print "done"
开发者ID:rtandon,项目名称:apps,代码行数:28,代码来源:http_call.py

示例13: handle

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
    def handle(self, *args, **options):
        s = Session()
        if len(args) < 2:
            print "Usage: replay_error <host:port> <portable request>"
            sys.exit(1)

            # self.request('GET', '{base_url}/{url}'.format(
            #     base_url=self.base_url.rstrip('/'),
            #     url=url.lstrip('/'),
            # ),
            # params=params or {},
            # headers=self.base_headers,
            # cookies={
            #     'token': self.token or '',
            # }

        portable = json.loads(base64.b64decode(args[1]))
        req = Request(
            portable['method'],
            'http://{host}{path}'.format(
                host=args[0],
                path=portable['path'],
            ),
            params=portable['get'],
            data=portable['post'],
            cookies=portable['cookies'],
        ).prepare()
        res = s.send(req)
        print res.content
开发者ID:DjangoAdminHackers,项目名称:django-db-log,代码行数:31,代码来源:replay_error.py

示例14: send_message

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
    def send_message(self, request):
        """Transport the message to the server and return the response.

        :param request: The JSON-RPC request string.
        :return: The response (a string for requests, None for notifications).
        """
        # Prepare the session
        session = Session()
        session_request = Request(method='POST', url=self.endpoint, \
            headers=self.headers, data=request, **self.requests_kwargs)
        prepared_request = session.prepare_request(session_request)
        prepared_request.headers = dict(list(dict(
            prepared_request.headers).items()) + list(self.headers.items()))
        # Log the request
        self.log_request(request, {'http_headers': prepared_request.headers})
        # Send the message
        try:
            response = session.send(prepared_request)
        except RequestException:
            session.close()
            raise
        session.close()
        # Log the response
        self.log_response(response.text, {'http_code': response.status_code, \
            'http_reason': response.reason, 'http_headers': response.headers})
        return response.text
开发者ID:dukakisxyz,项目名称:wifiportal21-map,代码行数:28,代码来源:http_server.py

示例15: _ads_request

# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import send [as 别名]
 def _ads_request(method, url, headers=None, data=None, url_params=None):
     logging.warn('Ads Request:%s' % url)
     s = Session()
     req = Request(string.upper(method), url, headers=headers, data=data, params=url_params)
     prepped = req.prepare()
     rsp = s.send(prepped)
     return rsp.text
开发者ID:GeekTemo,项目名称:ads_simulation,代码行数:9,代码来源:simulation.py


注:本文中的requests.Session.send方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。