Получавам отговор от сървър с gzip кодиране, но не мога да разбера как да го декодирам.
Опитах да използвам модула zlib, но получавам грешката: zlib.error: Error -3 while decompressing data: incorrect header check
Това е молбата ми:
r = requests.post(url=url,headers=headers,auth=auth,data=data)
print r.status_code
print r.headers
print zlib.decompress(r.content)
Разпечатката, която получавам е:
200
{'Content-Length': '1232', 'Content-Encoding': 'gzip', 'Accept-Ranges': 'bytes', 'X-Powered-By': 'PHP/5.5.38', 'Vary': 'Accept-Encoding', ...
грешката:
Traceback (most recent call last):
File "C:/testing.py", line 27, in <module>
print zlib.decompress(r.content)
zlib.error: Error -3 while decompressing data: incorrect header check
requests
трябва да ви дава некомпресирано съдържание, така че да не се налага да използвате zlib. - person furas   schedule 07.01.2017Content-Type
- person Nizam Mohamed   schedule 07.01.2017'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
. Отговорът:'Content-Type': 'text/html'
- person Mumfordwiz   schedule 07.01.2017requests
декомпресира вместо вас.content
вече трябва да е декомпресиран и не можете да го декомпресирате отново. - person tdelaney   schedule 07.01.2017print r.content
иprint r.text
- втората трябва да даде вече декодирани с помощта наutf-8
- person furas   schedule 07.01.2017r.text
връща декодирани низове, аcontent
е простоbytes
. - person tdelaney   schedule 07.01.2017requests
док. - person Nizam Mohamed   schedule 07.01.2017r.raw
. - person Nizam Mohamed   schedule 07.01.2017gzip.decompress(r.raw.read())
- person Nizam Mohamed   schedule 07.01.2017