'Parse \'Set-Cookie\' header data into Cookie objects, and add them to
this Cookies object.
:arg header_data: string containing only \'Set-Cookie:\' request headers
or their corresponding header values; if more than one, they must be
separated by CRLF (\r\n).
:arg ignore_bad_cookies: if set, will log each syntactically invalid
cookie rather than raising an exception at the first bad cookie. (This
includes cookies which have noncompliant characters in the attribute
section).
:arg ignore_bad_attributes: defaults to True, which means to log but
not raise an error when a particular attribute is unrecognized. (This
does not necessarily mean that the attribute is invalid, although that
would often be the case.) if unset, then an error will be raised at the
first semicolon-delimited block which has an unknown attribute.
:returns: a Cookies instance containing Cookie objects parsed from
header_data, each with recognized attributes populated.
.. note::
If you want to parse \'Cookie:\' headers (i.e., data like what\'s sent
with an HTTP request, which has only name=value pairs and no
attributes), then please use parse_request instead. Such lines often
contain multiple name=value pairs, and parse_response will throw away
the pairs after the first one, which will probably generate errors or
confusing behavior. (Since there\'s no perfect way to automatically
determine which kind of parsing to do, you have to tell it manually by
choosing correctly from parse_request between part_response.)'

def parse_response(self, header_data, ignore_bad_cookies=False, ignore_bad_attributes=True):

    cookie_dicts = _parse_response(header_data, ignore_bad_cookies=ignore_bad_cookies, ignore_bad_attributes=ignore_bad_attributes)
    cookie_objects = []
    for cookie_dict in cookie_dicts:
        cookie = Cookie.from_dict(cookie_dict)
        cookie_objects.append(cookie)
    self.add(*cookie_objects)
    return self
