Unfortunately, using the InflaterInputStream with an Inflater object did not always produce the correct decompression. I had to detect the headers and tell the Inflater where the offset to the payload was.
http://thushw.blogspot.com/2014/05/decoding-html-pages-with-content.html