本文整理汇总了Python中requests.Response.raw方法的典型用法代码示例。如果您正苦于以下问题:Python Response.raw方法的具体用法?Python Response.raw怎么用?Python Response.raw使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类requests.Response
的用法示例。
在下文中一共展示了Response.raw方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: send
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def send(self, request, stream=None, timeout=None, verify=None, cert=None, proxies=None):
pathname = url_to_path(request.url)
resp = Response()
resp.status_code = 200
resp.url = request.url
try:
stats = stat(pathname)
except OSError as exc:
resp.status_code = 404
resp.raw = exc
else:
modified = formatdate(stats.st_mtime, usegmt=True)
content_type = guess_type(pathname)[0] or "text/plain"
resp.headers = CaseInsensitiveDict({
"Content-Type": content_type,
"Content-Length": stats.st_size,
"Last-Modified": modified,
})
resp.raw = open(pathname, "rb")
resp.close = resp.raw.close
return resp
示例2: send
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def send(self, request, stream=None, timeout=None, verify=None, cert=None, proxies=None):
resp = Response()
resp.status_code = 200
resp.url = request.url
try:
import boto
except ImportError:
stderrlog.info('\nError: boto is required for S3 channels. '
'Please install it with `conda install boto`\n'
'Make sure to run `source deactivate` if you '
'are in a conda environment.\n')
resp.status_code = 404
return resp
conn = boto.connect_s3()
bucket_name, key_string = url_to_s3_info(request.url)
# Get the bucket without validation that it exists and that we have
# permissions to list its contents.
bucket = conn.get_bucket(bucket_name, validate=False)
try:
key = bucket.get_key(key_string)
except boto.exception.S3ResponseError as exc:
# This exception will occur if the bucket does not exist or if the
# user does not have permission to list its contents.
resp.status_code = 404
resp.raw = exc
return resp
if key and key.exists:
modified = key.last_modified
content_type = key.content_type or "text/plain"
resp.headers = CaseInsensitiveDict({
"Content-Type": content_type,
"Content-Length": key.size,
"Last-Modified": modified,
})
_, self._temp_file = mkstemp()
key.get_contents_to_filename(self._temp_file)
f = open(self._temp_file, 'rb')
resp.raw = f
resp.close = resp.raw.close
else:
resp.status_code = 404
return resp
示例3: build_response
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def build_response(request,
status_code=200,
headers={},
content='(none)'):
"""
Build a :class:`requests.Response` object on the basis of the passed
parameters.
"""
response = Response()
response.status_code = status_code
response.reason = responses[status_code]
response.headers = CaseInsensitiveDict(headers)
# Pretend that we've already read from the socket
response._content = content
response.encoding = get_encoding_from_headers(response.headers)
response.url = request.url
response.raw = MockRawResponse()
# Give the Response some context.
response.request = request
response.connection = MockConnection()
return response
示例4: responses
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def responses(code, path=None, redirection=None, data=None,
url=None,
headers=None):
if headers is None:
headers = {'Content-Type': 'text/xml'}
response = Response()
response.status_code = code
if path is not None and redirection is None:
with open(data_file(path), 'rb') as f:
response.raw = BytesIO(f.read())
elif data is not None:
response._content = data.encode('utf-8')
if redirection is not None:
temp = Response()
temp.status_code = 301 if 'permanent' in redirection else 302
temp.url = path
response.history.append(temp)
response.url = redirection
headers['location'] = path
if url is None:
if redirection is not None:
url = redirection
else:
url = 'https://example.com/{}'.format(str(uuid4()))
response.url = url
response.headers = headers
return response
示例5: test_process_response_no_status
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_process_response_no_status(self):
task = self._create_task()
api = self._create_instance(task)
response = Response()
response.status_code = 200
response.raw = io.BytesIO(b"<bogus />")
status = api._process_response(response)
self.assertEqual(status, "Failed")
示例6: test_process_response_failure_but_no_message
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_process_response_failure_but_no_message(self):
task = self._create_task()
api = self._create_instance(task)
response = Response()
response.status_code = 200
response.raw = io.BytesIO(b"<status>Failed</status>")
with self.assertRaises(MetadataApiError) as cm:
api._process_response(response)
self.assertEqual(response.text, str(cm.exception))
示例7: do_call
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def do_call(self, url, **kwargs):
response = Response()
response.raw = BytesIO(
"""<?xml version="1.0" encoding="ISO-8859-1"?>
<success>
</success>
""".encode('utf-8'))
response.status_code = 200
return response
示例8: test_process_response_no_zipstr
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_process_response_no_zipstr(self):
task = self._create_task()
api = self._create_instance(task)
response = Response()
response.status_code = 200
response.raw = io.BytesIO(
deploy_result.format(status="testing", extra="").encode()
)
resp = api._process_response(response)
self.assertEqual(resp, {})
示例9: test_process_response_status_no_done_element
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_process_response_status_no_done_element(self):
task = self._create_task()
api = self._create_instance(task)
response = Response()
response.status_code = 200
response.raw = io.BytesIO(
b'<?xml version="1.0" encoding="UTF-8"?><foo>status</foo>'
)
res = api._process_response_status(response)
self.assertEqual(api.status, "Failed")
self.assertEqual(res.content, response.content)
示例10: test_process_response_status_pending
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_process_response_status_pending(self):
task = self._create_task()
api = self._create_instance(task)
response = Response()
response.status_code = 200
response.raw = io.BytesIO(
b'<?xml version="1.0" encoding="UTF-8"?><done>false</done>'
)
res = api._process_response_status(response)
self.assertEqual(api.status, "Pending")
self.assertEqual(res.content, response.content)
示例11: test_process_response_status_in_progress_state_detail
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_process_response_status_in_progress_state_detail(self):
task = self._create_task()
api = self._create_instance(task)
response = Response()
response.status_code = 200
response.raw = io.BytesIO(
b'<?xml version="1.0" encoding="UTF-8"?><test><done>false</done><stateDetail>Deploy log goes here</stateDetail></test>'
)
api.status = "InProgress"
res = api._process_response_status(response)
self.assertEqual(api.status, "InProgress")
self.assertEqual(res.content, response.content)
示例12: test_request_headers
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_request_headers(self):
URL = 'http://pulpproject.org/robots.txt'
req = DownloadRequest(URL, StringIO(), headers={'pulp_header': 'awesome!'})
response = Response()
response.status_code = httplib.OK
response.raw = StringIO('abc')
session = threaded.build_session(self.config)
session.get = mock.MagicMock(return_value=response, spec_set=session.get)
self.downloader._fetch(req, session)
session.get.assert_called_once_with(URL, headers={'pulp_header': 'awesome!'})
示例13: test_process_response_zipstr_no_packages
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_process_response_zipstr_no_packages(self):
task = self._create_task()
api = self._create_instance(task)
response = Response()
response.status_code = 200
response.raw = io.BytesIO(
retrieve_result.format(
zip=CreatePackageZipBuilder("testing", api.api_version)(), extra=""
).encode()
)
resp = api._process_response(response)
self.assertEqual(resp, {})
示例14: test_process_response_zipstr_one_package
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def test_process_response_zipstr_one_package(self):
task = self._create_task()
api = self._create_instance(task)
response = Response()
response.status_code = 200
response.raw = io.BytesIO(
retrieve_result.format(
zip=InstallPackageZipBuilder("foo", "1.1")(), extra=""
).encode()
)
resp = api._process_response(response)
self.assertEqual(resp, {"foo": "1.1"})
示例15: local_get
# 需要导入模块: from requests import Response [as 别名]
# 或者: from requests.Response import raw [as 别名]
def local_get(url, *args, **kwargs):
"Fetch a stream from local files."
from requests import Response
p_url = urlparse(url)
if p_url.scheme != "file":
raise ValueError("Expected file scheme")
filename = url2pathname(p_url.path)
response = Response()
response.status_code = 200
response.raw = open(filename, "rb")
return response